Добрый день!Пробую освоить в GNUplot построение графиков из таблиц.
Надо построить графики по таблице:0 0,4594 0,2202 -0,0144
10 0,4614 0,2264 -0,0187
20 0,4608 0,2253 -0,0163
30 0,4619 0,2192 -0,0122
40 0,4606 0,2227 -0,0093
50 0,4622 0,2233 0,0544
60 0,4603 0,2271 0,2084
70 0,4603 0,2191 0,3244
80 0,4659 0,2185 0,3911
90 0,4667 0,2219 0,4279
100 0,4642 0,2233 0,4513
110 0,4616 0,2164 0,46
120 0,4564 0,2189 0,4674
130 0,4521 0,2219 0,4739
140 0,4486 0,2197 0,4704
150 0,4459 0,2245 0,477
160 0,4468 0,2369 0,4752
170 0,4416 0,3024 0,4724
180 0,4358 0,4389 0,4733
190 0,4356 0,5494 0,476
200 0,4432 0,6065 0,4723
210 0,4474 0,6352 0,4752
220 0,442 0,6502 0,4742
230 0,436 0,6556 0,4763
240 0,4356 0,6613 0,4737
250 0,4372 0,668 0,4734
260 0,4407 0,6658 0,4734
270 0,443 0,6663 0,4683
280 0,4416 0,667 0,468
290 0,4368 0,6659 0,4705
300 0,4312 0,6659 0,4737
310 0,4347 0,6669 0,4721
320 0,4396 0,6666 0,4708
330 0,4359 0,6676 0,4741
340 0,4336 0,6657 0,4691
350 0,4377 0,6617 0,4677
360 0,4403 0,6634 0,4712
370 0,4411 0,6624 0,4745
380 0,4387 0,6603 0,471
390 0,4415 0,6649 0,4699
400 0,4398 0,6622 0,4702
410 0,4374 0,6621 0,4708
420 0,4378 0,659 0,4666
430 0,4396 0,6577 0,467
440 0,438 0,6599 0,467
450 0,4336 0,6561 0,464
460 0,4356 0,656 0,4662
470 0,4336 0,6566
480 0,4348 0,6603
490 0,4319
500 0,4349
510 0,4334
520 0,4374
530 0,4405
540 0,4375
550 0,4377
560 0,4354
570 0,4333
580 0,4425
590 0,4343
600 0,4344
610 0,4343
620 0,4306
630 0,4323
640 0,4307
650 0,4273
660 0,4252
670 0,4267
680 0,4424
690 0,442
700 0,435
710 0,4298
720 0,4298
730 0,4299
740 0,4277
750 0,428
760 0,4224
770 0,4346
780 0,4373
790 0,4411
800 0,4309
810 0,435
820 0,4309
830 0,4325
840 0,4249
850 0,4253
860 0,4289
870 0,4324
880 0,4312
890 0,4257
900 0,4275
910 0,4326
920 0,4291
930 0,4327
940 0,4252
950 0,4333
960 0,4255
970 0,4291
980 0,4288
990 0,4251Где первая колонка Х, а 3 последующие Y1, Y2, Y3.
Не могу найти в мануале и сайтах, посвященных программе два момента:
1. Синтаксис построения графиков из таблиц.
2. Построение нескольких графиков X, Y1,Y2,Y3 на одном листе.Прошу дать ссылочку, если кто знает как это сделать.
Проверил в labplot.
с таким набором данных он меня нагло слал, присмотревшись заметил что при вставке этого набора тип трех последних колонок менялся на "TEXT"
http://176.37.77.115/img/ksnip_20200827-012138.pngЗаменил запятые на точки - всё сложилось в кучу
http://176.37.77.115/img/ksnip_20200827-011925.pngПри экспорте такой таблицы в текст получается нечто вот такое:
http://176.37.77.115/img/Spreadsheet.txtСмотрим в ман и находим подтверждение этой теории:
обязательное условие — разделителем дробной части должны быть точкиПробуем собрать график из правильной таблицы:
http://176.37.77.115/img/ksnip_20200827-013659.pngЗЫ
labplot к использованию не рекомендую - за то время что я здесь с ним игрался оно упало раз шесть или семь (ессно с полной потерей данных)Ззы
Примеры синтаксиса брал здесь:
http://astrotourist.info/postroenie-grafika-pri-pomoshchi-ut...
> Пробуем собрать график из правильной таблицы:
> http://176.37.77.115/img/ksnip_20200827-013659.pnghttps://drive.google.com/file/d/19q96yFkodLHSqf_GIMcJixyTykw...
У меня почему-то какой-то странный формат шкалы и поэтому график не такой как должно быть.
Запятые на точки я поменял в calc автозаменой, потом скопировал в txt документ и сохранил.
> У меня почему-то какой-то странный формат шкалы и поэтому график не такой
> как должно быть.А что в текстовом файле?
>> У меня почему-то какой-то странный формат шкалы и поэтому график не такой
>> как должно быть.
> А что в текстовом файле?0 0.4594 0.2202 -0.0144
10 0.4614 0.2264 -0.0187
20 0.4608 0.2253 -0.0163
30 0.4619 0.2192 -0.0122
40 0.4606 0.2227 -0.0093
50 0.4622 0.2233 0.0544
60 0.4603 0.2271 0.2084
70 0.4603 0.2191 0.3244
80 0.4659 0.2185 0.3911
90 0.4667 0.2219 0.4279
100 0.4642 0.2233 0.4513
110 0.4616 0.2164 0.46
120 0.4564 0.2189 0.4674
130 0.4521 0.2219 0.4739
140 0.4486 0.2197 0.4704
150 0.4459 0.2245 0.477
160 0.4468 0.2369 0.4752
170 0.4416 0.3024 0.4724
180 0.4358 0.4389 0.4733
190 0.4356 0.5494 0.476
200 0.4432 0.6065 0.4723
210 0.4474 0.6352 0.4752*** - и так до конца
Может ему принудительно сделать set xrange и set yrange??
> Может ему принудительно сделать set xrange и set yrange??http://gnuplot.sourceforge.net/docs_4.2/node294.html
Так?
Пробовал задать диапазон, но это не помогло, график тот же.
> Пробовал задать диапазон, но это не помогло, график тот же.gnuplot> plot "turb.txt" using 1:2 with lines lt rgb "black" lw 2 title "first",\
>"turb.txt" using 1:3 with lines lt rgb "grey" lw 2 title "second"\
>"turb.txt" using 1:4 with lines lt "blue" lw 2 title "third"warning: Skipping data file with no valid points
gnuplot> plot "turb.txt" using 1:2 with lines lt rgb "black" lw 2 title "first","turb.txt" using 1:3 with lines lt rgb "grey" lw 2 title "second""turb.txt" using 1:4 with lines lt "blue" lw 2 title "third"
^
unexpected or unrecognized tokengnuplot> set xrange [0:1000]
gnuplot> set yrange [0:1.5]и нивкакую.
синтаксис брал отсюда:
https://www.youtube.com/watch?v=ZEUHCx8gKvI
set datafile separator comma- это пример таблицы http://zenonharley.com/gnuplot/cli/2015/06/29/graphing-data-...
я думаю, что программа читает все данные в строку как один график, а не по столбцам. Тогда в моем случае сепаратор - пробел.
> set datafile separator comma
> - это пример таблицы http://zenonharley.com/gnuplot/cli/2015/06/29/graphing-data-...
> я думаю, что программа читает все данные в строку как один график,
> а не по столбцам. Тогда в моем случае сепаратор - пробел.gnuplot> reset
gnuplot> set datafile separator " "
gnuplot> plot "turb.txt" using 1:2 with lines lt rgb "black" lw 2 title "first",\
>"turb.txt" using 1:3 with lines lt rgb "grey" lw 2 title "second"\
>"turb.txt" using 1:4 with lines lt "blue" lw 2 title "third"warning: Skipping data file with no valid points
warning: Skipping data file with no valid points
^
x range is invalidgnuplot>
Ему опять не нравятся точки.
>[оверквотинг удален]
>
>
>
>
>
> ^
> x range is
> invalid
> gnuplot>
> Ему опять не нравятся точки.Это не о тех точках. Те называются "dots", а points это о точках излома кривой.
Взял, открыл таблицу в calc, сохранил данные активного листа в *.csv
Скормил программе gnuplot файл turb.csv
https://drive.google.com/file/d/1GFNUwE8mtvHxH5W-CR9V6CdM7Ip...Но у меня общий вид графика и размеры по ОY вышли, а вот вид по ОХ - нет.
Шкала не та, не те значения вообще, 5000 у меня нет в таблице? Откуда он их берет?И еще - почему программа игнорирует столбики 2 и 3?
> Взял, открыл таблицу в calc, сохранил данные активного листа в *.csv
> Скормил программе gnuplot файл turb.csv
> https://drive.google.com/file/d/1GFNUwE8mtvHxH5W-CR9V6CdM7Ip...
> Но у меня общий вид графика и размеры по ОY вышли, а
> вот вид по ОХ - нет.
> Шкала не та, не те значения вообще, 5000 у меня нет в
> таблице? Откуда он их берет?
> И еще - почему программа игнорирует столбики 2 и 3?Полностью неверный синтаксис
>[оверквотинг удален]
> file with no valid points
> gnuplot> plot "turb.txt" using 1:2 with lines lt rgb "black" lw 2
> title "first","turb.txt" using 1:3 with lines lt rgb "grey" lw 2
> title "second""turb.txt" using 1:4 with lines lt "blue" lw 2 title
> "third"
>
>
> ^
> unexpected or unrecognized
> tokenПосле ["second"] не хватает запятой.
> gnuplot> set xrange [0:1000]
> gnuplot> set yrange [0:1.5]
> и нивкакую.А почему yrange [0:1.5] если в наборе есть отрицательные значения?!!
> Надо построить графики по таблице:Тривиально же, нет?
cat > testdata.txt << EOF
#X Y1 Y2 Y3
0 0,4594 0,2202 -0,0144
10 0,4614 0,2264 -0,0187
20 0,4608 0,2253 -0,0163
30 0,4619 0,2192 -0,0122
40 0,4606 0,2227 -0,0093
EOF
sed -ri 's/,/./g' testdata.txt
gnuplot -e "\
set terminal jpeg; \
plot 'testdata.txt' using 1:2 title 'Y1', \
'testdata.txt' using 1:3 title 'Y2', \
'testdata.txt' using 1:4 title 'Y3' \
" >> testdata.jpg
shotwell testdata.jpg> Не могу найти в мануале и сайтах, посвященных программе два момента:
> 1. Синтаксис построения графиков из таблиц.
> 2. Построение нескольких графиков X, Y1,Y2,Y3 на одном листе.http://people.duke.edu/~hpgavin/gnuplot.html (3.2 Plotting Data)
Ещё подглядывал в http://zenonharley.com/gnuplot/cli/2015/06/29/graphing-data-...
По обоим ссылкам ещё много примеров.
Спасибо большое, буду изучать! :)
Еще раз скопипастил полный набор данных из шапки, заменил запятые на точки
собралось с пол пинка
http://176.37.77.115/img/ksnip_20200828-143346.pngМожет что-то не так с виндовой версией??
> Может что-то не так с виндовой версией??Блин, красиво у тебя получается :)
00.4594 0.2202 -0.0144
100.4614 0.2264 -0.0187
200.4608 0.2253 -0.0163
300.4619 0.2192 -0.0122
400.4606 0.2227 -0.0093
500.4622 0.2233 0.0544
600.4603 0.2271 0.2084
700.4603 0.2191 0.3244
800.4659 0.2185 0.3911
900.4667 0.2219 0.4279
1000.4642 0.2233 0.4513
1100.4616 0.2164 0.46
1200.4564 0.2189 0.4674
1300.4521 0.2219 0.4739
1400.4486 0.2197 0.4704
1500.4459 0.2245 0.477
1600.4468 0.2369 0.4752Вот что произошло при экспорте в csv. первая колонка слилась со второй в 1 многозначное число.
Поэтому и график странный
Все получилось, спасибо!https://drive.google.com/file/d/16lyYmGnSVWRjcTUOlMS3X1bg4pq...