|
From: wdezell <Bi...@CL...> - 2009-09-01 18:15:36
|
I'm using Gnuplot as a visualization tool for a Qt app. To streamline the
process my Qt app generates a text file containing all Gnuplot setup, embeds
the plot data in the file, and executes an external Gnuplot process with the
script file passed as a parameter. A simple working example is as follows:
--- begin script file contents ---
reset
set grid
set auto x
set yrange [0:]
set boxwidth 0.9 relative
set style fill solid 1.00 border -1
set style histogram gap 1 title offset character 0, 0, 0
set style data histogram
set title "BLUE Recognition By Range
set ylabel "Count"
unset key
plot '-' index 0 using 2:xtic(1) ti col ls 11
xx 0
"0 <500m" 1
"500 <1Km" 1
"1K <2Km" 21
"2K <3Km" 42
"3K <4Km" 22
"4K <5Km" 15
">5Km" 9
e
pause mouse keypress
--- end script file contents ---
Now for the guidance I desperately need -- I need to do the same thing for a
"Clustered Histogram". The second example on the demo page at
http://gnuplot.sourceforge.net/demo_4.2/histograms.html
http://gnuplot.sourceforge.net/demo_4.2/histograms.html is basically what I
need to accomplish. However, I cannot figure out a correct "plot" syntax
that will correctly support the right "using" syntax that will grab data
from multi-column embedded data within the same "index".
As a start, I am trying to adapt the provided example to work in a
single-file style. I would think that the following "plot" syntax might
work but it does not:
plot '-' index 0 using 6:xtic(1) ti col, '-' index 0 u 12 ti col, \
'-' index 0 u 13 ti col, '-' index 0 u 14 ti col
I have included commands and data from the online example below packaged
together as example of what I am trying to achieve. How must I modify the
"plot" line to make this work as a single script?
Any and all guidance is deeply appreciated.
Regards,
Bill
------ begin sample script from example ---------------
# set terminal png transparent nocrop enhanced font arial 8 size 500,350
# set output 'histograms.2.png'
set bar 1.000000
set boxwidth 0.9 absolute
set style fill solid 1.00 border -1
set style rectangle back fc lt -3 fillstyle solid 1.00 border -1
set key inside right top vertical Right noreverse enhanced autotitles
columnhead nobox
set style histogram clustered gap 1 title offset character 0, 0, 0
set datafile missing '-'
set style data histograms
set xtics border in scale 1,0.5 nomirror rotate by -45 offset character 0,
0, 0
#set xtics norangelimit
set xtics ("1891-1900" 0.00000 -1, "1901-1910" 1.00000 -1, "1911-1920"
2.00000 -1, "1921-1930" 3.00000 -1, "1931-1940" 4.00000 -1, "1941-1950"
5.00000 -1, "1951-1960" 6.00000 -1, "1961-1970" 7.00000 -1)
set title "US immigration from Northern Europe\nPlot selected data columns
as histogram of clustered boxes"
set rrange [ * : * ] noreverse nowriteback # (currently [0.00000:10.0000] )
set trange [ * : * ] noreverse nowriteback # (currently [-5.00000:5.00000]
)
set urange [ * : * ] noreverse nowriteback # (currently [-5.00000:5.00000]
)
set vrange [ * : * ] noreverse nowriteback # (currently [-5.00000:5.00000]
)
set ylabel offset character 0, 0, 0 font "" textcolor lt -1 rotate by 90
set y2label offset character 0, 0, 0 font "" textcolor lt -1 rotate by 90
set yrange [ 0.00000 : 300000. ] noreverse nowriteback
set cblabel offset character 0, 0, 0 font "" textcolor lt -1 rotate by 90
set locale "C"
plot 'immigration.dat' using 6:xtic(1) ti col, '' u 12 ti col, '' u 13 ti
col, '' u 14 ti col
# IMMIGRATION BY REGION AND SELECTED COUNTRY OF LAST RESIDENCE
#
Region Austria Hungary Belgium Czechoslovakia Denmark France Germany
Greece Ireland Italy Netherlands Norway Sweden Poland Portugal
Romania Soviet_Union Spain Switzerland United_Kingdom Yugoslavia
Other_Europe TOTAL
1891-1900 234081 181288 18167 - 50231 30770 505152
15979 388416 651893 26758 95015 226266 96720 27508 12750
505290 8731 31179 271538 - 282 3378014
1901-1910 668209 808511 41635 - 65285 73379 341498
167519 339065 2045877 48262 190505 249534 - 69149 53008
1597306 27935 34922 525950 - 39945 7387494
1911-1920 453649 442693 33746 3426 41983 61897 143945
184201 146181 1109524 43718 66395 95074 4813 89732 13311
921201 68611 23091 341408 1888 31400 4321887
1921-1930 32868 30680 15846 102194 32430 49610 412202
51084 211234 455315 26948 68531 97249 227734 29994 67646
61742 28958 29676 339570 49064 42619 2463194
1931-1940 3563 7861 4817 14393 2559 12623 144058 9119
10973 68028 7150 4740 3960 17026 3329 3871 1370 3258
5512 31572 5835 11949 377566
1941-1950 24860 3469 12189 8347 5393 38809 226578 8973
19789 57661 14860 10100 10665 7571 7423 1076 571 2898
10547 139306 1576 8486 621147
1951-1960 67106 36637 18575 918 10984 51121 477765
47608 43362 185491 52277 22935 21697 9985 19588 1039 671
7894 17675 202824 8225 16350 1325727
1961-1970 20621 5401 9192 3273 9201 45237 190796
85969 32966 214111 30606 15484 17116 53539 76065 3531 2465
44659 18453 213822 20381 11604 1124492
e
pause mouse keypress
------ end sample script from example -----------------
--
View this message in context: http://www.nabble.com/Clustered-Histogram-with-embedded-data-tp25244114p25244114.html
Sent from the Gnuplot - User mailing list archive at Nabble.com.
|
|
From: Thomas S. <t.s...@fz...> - 2009-09-06 12:35:46
|
using the same data with '-' as filename several times requires to give the date several times: http://www.gnuplot.info/docs/node131.html wdezell wrote: > > I'm using Gnuplot as a visualization tool for a Qt app. To streamline the > process my Qt app generates a text file containing all Gnuplot setup, > embeds the plot data in the file, and executes an external Gnuplot process > with the script file passed as a parameter. A simple working example is > as follows: > > --- begin script file contents --- > reset > set grid > set auto x > set yrange [0:] > set boxwidth 0.9 relative > set style fill solid 1.00 border -1 > set style histogram gap 1 title offset character 0, 0, 0 > set style data histogram > set title "BLUE Recognition By Range > set ylabel "Count" > unset key > plot '-' index 0 using 2:xtic(1) ti col ls 11 > > xx 0 > "0 <500m" 1 > "500 <1Km" 1 > "1K <2Km" 21 > "2K <3Km" 42 > "3K <4Km" 22 > "4K <5Km" 15 > ">5Km" 9 > e > > > pause mouse keypress > --- end script file contents --- > > Now for the guidance I desperately need -- I need to do the same thing for > a "Clustered Histogram". The second example on the demo page at > http://gnuplot.sourceforge.net/demo_4.2/histograms.html > http://gnuplot.sourceforge.net/demo_4.2/histograms.html is basically what > I need to accomplish. However, I cannot figure out a correct "plot" > syntax that will correctly support the right "using" syntax that will grab > data from multi-column embedded data within the same "index". > > As a start, I am trying to adapt the provided example to work in a > single-file style. I would think that the following "plot" syntax might > work but it does not: > > plot '-' index 0 using 6:xtic(1) ti col, '-' index 0 u 12 ti col, \ > '-' index 0 u 13 ti col, '-' index 0 u 14 ti col > > I have included commands and data from the online example below packaged > together as example of what I am trying to achieve. How must I modify the > "plot" line to make this work as a single script? > > Any and all guidance is deeply appreciated. > > Regards, > Bill > > ------ begin sample script from example --------------- > # set terminal png transparent nocrop enhanced font arial 8 size 500,350 > # set output 'histograms.2.png' > set bar 1.000000 > set boxwidth 0.9 absolute > set style fill solid 1.00 border -1 > set style rectangle back fc lt -3 fillstyle solid 1.00 border -1 > set key inside right top vertical Right noreverse enhanced autotitles > columnhead nobox > set style histogram clustered gap 1 title offset character 0, 0, 0 > set datafile missing '-' > set style data histograms > set xtics border in scale 1,0.5 nomirror rotate by -45 offset character > 0, 0, 0 > #set xtics norangelimit > set xtics ("1891-1900" 0.00000 -1, "1901-1910" 1.00000 -1, "1911-1920" > 2.00000 -1, "1921-1930" 3.00000 -1, "1931-1940" 4.00000 -1, "1941-1950" > 5.00000 -1, "1951-1960" 6.00000 -1, "1961-1970" 7.00000 -1) > set title "US immigration from Northern Europe\nPlot selected data columns > as histogram of clustered boxes" > set rrange [ * : * ] noreverse nowriteback # (currently [0.00000:10.0000] > ) > set trange [ * : * ] noreverse nowriteback # (currently > [-5.00000:5.00000] ) > set urange [ * : * ] noreverse nowriteback # (currently > [-5.00000:5.00000] ) > set vrange [ * : * ] noreverse nowriteback # (currently > [-5.00000:5.00000] ) > set ylabel offset character 0, 0, 0 font "" textcolor lt -1 rotate by 90 > set y2label offset character 0, 0, 0 font "" textcolor lt -1 rotate by 90 > set yrange [ 0.00000 : 300000. ] noreverse nowriteback > set cblabel offset character 0, 0, 0 font "" textcolor lt -1 rotate by 90 > set locale "C" > plot 'immigration.dat' using 6:xtic(1) ti col, '' u 12 ti col, '' u 13 ti > col, '' u 14 ti col > > # IMMIGRATION BY REGION AND SELECTED COUNTRY OF LAST RESIDENCE > # > Region Austria Hungary Belgium Czechoslovakia Denmark France Germany > Greece Ireland Italy Netherlands Norway Sweden Poland Portugal > Romania Soviet_Union Spain Switzerland United_Kingdom Yugoslavia > Other_Europe TOTAL > 1891-1900 234081 181288 18167 - 50231 30770 505152 > 15979 388416 651893 26758 95015 226266 96720 27508 12750 > 505290 8731 31179 271538 - 282 3378014 > 1901-1910 668209 808511 41635 - 65285 73379 341498 > 167519 339065 2045877 48262 190505 249534 - 69149 53008 > 1597306 27935 34922 525950 - 39945 7387494 > 1911-1920 453649 442693 33746 3426 41983 61897 143945 > 184201 146181 1109524 43718 66395 95074 4813 89732 13311 > 921201 68611 23091 341408 1888 31400 4321887 > 1921-1930 32868 30680 15846 102194 32430 49610 412202 > 51084 211234 455315 26948 68531 97249 227734 29994 67646 > 61742 28958 29676 339570 49064 42619 2463194 > 1931-1940 3563 7861 4817 14393 2559 12623 144058 > 9119 10973 68028 7150 4740 3960 17026 3329 3871 > 1370 3258 5512 31572 5835 11949 377566 > 1941-1950 24860 3469 12189 8347 5393 38809 226578 > 8973 19789 57661 14860 10100 10665 7571 7423 1076 > 571 2898 10547 139306 1576 8486 621147 > 1951-1960 67106 36637 18575 918 10984 51121 477765 > 47608 43362 185491 52277 22935 21697 9985 19588 1039 > 671 7894 17675 202824 8225 16350 1325727 > 1961-1970 20621 5401 9192 3273 9201 45237 190796 > 85969 32966 214111 30606 15484 17116 53539 76065 3531 > 2465 44659 18453 213822 20381 11604 1124492 > e > > > pause mouse keypress > ------ end sample script from example ----------------- > > > -- View this message in context: http://www.nabble.com/Clustered-Histogram-with-embedded-data-tp25244114p25317387.html Sent from the Gnuplot - User mailing list archive at Nabble.com. |