#gnuplot
#gnuplot
Вопрос:
Я строю 3D-график 2D-распределения z (x, y), используя код,
----- (variables and functions definition) -------
set ticslevel 0
set pm3d
set zrange[cbmin:cbmax]
set xrange[0:261]
set yrange[0:261]
set xtics 50
set ytics 50
set ztics 2
splot fnc_snap_name(idx, PSNAP, fname_snap) using 1:2:($4>0?f($4):cbmin)
with pm3d notitle, fnc_snap_name(idx, PSNAP_INT, fname_snap_int) using
1:0:($3>0?f($3):cbmin) with line ls 1 lw 3 notitle
pause -1
Далее, в том же коде и со вторым аргументом splot
команды я пытаюсь построить на плоскости y = 0 одномерное распределение. Результат следующий
Как вы можете видеть, кривая отображается по диагонали, пока я думал, что запись 1:0:X
зафиксирует координаты y равными нулю, данные столбца 1
для координат x и X
будут z-координатами.
Как правильно поступить?
Ответ №1:
Очень близко. Вместо using 1:0:(x)
того, чтобы
splot ... using 1: (0.0) : ($3>0?f($3):cbmin)
То есть вам нужно постоянное значение (0.0), а не значение столбца данных 0, который является «псевдоколонкой», представляющей номер строки файла данных или последовательный индекс структуры данных.
Комментарии:
1. Это сработало отлично. Спасибо и за пояснения.