From: Wolf D. <dre...@ve...> - 2009-11-16 07:36:45
|
Hello friends, Guten Morgen, thanks for hints by Thomas and Hans-Bernhard (da könnten wir ja fast auf gut Deutsch weitermachen… (-;) With your support I found nicely working solutions for my tasks: This one plots the name of a bus stop left (column 1), the number of boarding passengers (column 2) right besides circles, these are positioned according to their geographic coordinates (column 3&4). Confusing is the behaviour of the "offset" command - to find this setup took very much trial and error. schnipp++++++++++++++++++++++++++++++++++++++++++++++++++++ set terminal svg fixed enhanced fsize 1 unset border unset xtics unset ytics set output "Augangsdaten.svg" plot [4430000:4467900] [681000:668691] "Eingangsdaten.csv" using 3:4: ((abs($1))*0.05) with points pointtype 6 pointsize variable notitle, "Eingangsdaten.csv" using ($3+(abs($1))):4:2 with labels left offset 0.75,0 notitle, "Eingangsdaten.csv" using ($3-(abs($1))):4:1 with labels right offset -0.75,0 notitle unset output schnapp++++++++++++++++++++++++++++++++++++++++++++++++++++ The other one plots lines showing passengers travelling from a number of stops to other stops. Columns 1-4 do contain the x,y-coordinates of bus stops, column 5 contains the number of passengers, these are plotted in the middle of each line, columns 6&7 do contain the names of the bus stops at the beginning and the end. Thanks a lot for pointing me to the "with vectors" command - this was the breakthrough. The very clou would be a possibility to modulate the thickness of vectors by the number of passengers - bus as I do have to rework it afterwards anyways, it is not so important. schnipp ++++++++++++++++++++++++++++++++++++++++++++++++++++ set terminal svg fixed enhanced fsize 1 unset border unset xtics unset ytics set output "Ergebnis.svg" set xrange [4433000:4467900] set yrange [689410:658691] plot "Eingangsdaten.csv" using 1:2:($3-$1):($4-$2) with vectors nohead lw .5, "Eingangsdaten.csv" using (($1+$3)/2):(($2+$4)/2):5 with labels, "Eingangsdaten.csv" using 1:2:6 with labels, "Eingangsdaten.csv" using 3:4:7 with labels unset output schnapp ++++++++++++++++++++++++++++++++++++++++++++++++++++ Specialized software which does the same costs 10.000s of Euros… Thanks a lot and greetings, Wolf Am 09.11.2009 um 14:48 schrieb Hans-Bernhard Bröker: > Wolf Drechsel wrote: >> Given is a list, each line is containing two sets of x-y- >> coordinates. Each linie should produce one stroke in the plot, >> leading from coordinate set 1 to coordinate set 2. > > If all such lines are strictly single (no sequences of joined > lines), you might be better off doing a plot "with vectors". > > Or you could transform your datafile into a massive list of 'set > arrow' commands and load that as a gnuplot script, then make a > dummy plot to display them. Each arrow even gets to have its own > width. |