gnuplot 2-й участок к 3-му заборному участку - PullRequest
3 голосов
/ 22 июня 2011

У меня есть сюжет, похожий на этот:

http://www.abload.de/img/selection001yplp.png

Однако линии довольно часто пересекаются, и я не могу видеть столько, сколько хотел бы.Мой скрипт gnuplot выглядит следующим образом:

    set autoscale
    set term pdfcairo font ",4"
    set output "plot.pdf"
    set xdata time
    set format x "%H:%M"
    set timefmt "%s"
    set yrange [0:550]
    plot "file.dat" every 150 using 3:4 title '' with lines, \
         "file.dat" every 150 using 3:5 title '' with lines, \
         "file.dat" every 150 using 3:6 title '' with lines, \
         "file.dat" every 150 using 3:7 title '' with lines, \
         "file.dat" every 150 using 3:8 title '' with lines, \
         "file.dat" every 150 using 3:9 title '' with lines, \
         "file.dat" every 150 using 3:10 title '' with lines, \
         "file.dat" every 150 using 3:11 title '' with lines

и соответствующий file.dat выглядит следующим образом:

(.........)
6 1303238171 0 134.332413 140.304581 138.496323 134.021835 105.546227 107.943008 102.812347 109.098152 972.554886
7 1303238171 0 134.232849 140.35408 138.186279 132.489319 105.941231 108.020004 103.009338 109.75119 971.98429
8 1303238171 0 135.125488 138.125427 138.100098 132.543625 106.153214 107.507042 102.338707 125.25383 985.147431
9 1303238171 0 134.341904 139.913376 138.070648 132.368164 106.214211 108.506859 102.963211 155.246277 1017.62465
10 1303238171 1 134.163055 140.042313 139.231033 132.444244 106.161438 108.850807 103.753929 162.19162 1026.838439
11 1303238171 1 134.179016 140.187561 138.68425 132.572876 107.169006 107.507057 102.974937 120.698692 983.973395
12 1303238171 1 134.40593 140.569382 138.604828 139.589264 106.631699 108.092957 103.634117 108.943863 980.47204
13 1303238172 1 134.353363 138.062759 138.344818 140.665985 107.538544 108.983582 104.300827 175.732117 1047.981995
14 1303238172 1 135.190887 140.411484 138.174591 133.823929 105.412224 108.240623 102.790154 120.459106 984.502998
(.........)

Есть ли простой способ получить эту диаграммупохож на забор, как на странице примеров gnuplot ?Я посмотрел на это, и это кажется очень сложным.Я хотел бы легко добавить третье измерение без изменения file.dat.Вы, наверное, знаете, как этого добиться?Или у вас есть другие идеи, как сделать эту диаграмму более удобочитаемой?

С уважением,

1 Ответ

2 голосов
/ 23 июня 2011

Может быть, я не правильно понимаю вашу проблему. Но так как вы наносите время на ось X, кажется неудобным превращать это в трехмерный график, поскольку время является только одномерным значением. Как правило, у вас есть 3D-графики, если вы имеете дело с поверхностями (2d-данные), где вы строите график зависимости температуры, давления или даже времени (по крайней мере, 1d-данных).

Чтобы сделать график более читабельным и, в зависимости от ваших данных, возможно, мультиплот может облегчить ситуацию. Затем вы можете сгруппировать ваши данные в несколько графиков, что позволит установить новые диапазоны для оси y?!

Если я могу указать на некоторые упрощения вашего сценария:
Используйте функциональность итерации следующим образом:

plot for [i=4:11] "file.dat" every 150 using 3:i title '' with lines

И чтобы сделать эту линию немного более четкой:

plot for [i=4:11] "file.dat" every 150 u 3:i t '' w l

И, опять же, если вы не хотите использовать легенду на своем сюжете:

set key off
plot for [i=4:11] "file.dat" every 150 u 3:i w l

Имейте в виду, что я не проверял несколько строк выше, поэтому в них могут быть некоторые опечатки ^^.

...