在 gnuplot 中使用 pm3d 在 3d 表面上绘制点
plotting points on 3d surface with pm3d in gnuplot
我正在尝试使用 gnuplot 在 3d 表面以及 3d 表面的基础上绘制一个点。下面是我正在使用的代码,数据“datx.dat”位于以下位置 https://www.dropbox.com/s/8evj5da7yco1xmo/datx.dat?dl=0
set dgrid3d 100,100
set cntrparam levels disc -242.3,-242.5,-243,-244,-245,-246,-247,-248
set contour both
set hidden3d back offset 1 trianglepattern 3 undefined 1 altdiagonal bentover
#set palette rgbformulae 12,12,12
set view 50,320
set contour both
unset key
unset colorbox
$data << EOD
1175.4,1.61,-242.01
EOD
splot 'datx.dat' using 1:2:3 with pm3d, \
$data using 1:2:3 with labels point pt 7
下面是输出,我没有看到所需位置的点。我如何在 gnuplot 中实现这一点?
期望的输出:
它不起作用的原因是 set contours ... splot $DATA with labels
告诉程序绘制 $DATA 轮廓并沿着这些轮廓放置标签。显然单点数据集不可能生成等值线,所以没地方放标签。
将单个点放置在表面已知位置的最简单方法是:
set label 1 "" at 1175.4,1.61,-242.01 point pt 7
# make sure it is not obscured by the surface
set label 1 front
在底座上放置一个点也很容易,只要您准确指定要绘制底座的位置(而不是尝试预测自动放置的最终位置):
Zbase = -500
set xyplane at Zbase
set label 2 "" at 1175.4, 1.61, Zbase point pt 7
我正在尝试使用 gnuplot 在 3d 表面以及 3d 表面的基础上绘制一个点。下面是我正在使用的代码,数据“datx.dat”位于以下位置 https://www.dropbox.com/s/8evj5da7yco1xmo/datx.dat?dl=0
set dgrid3d 100,100
set cntrparam levels disc -242.3,-242.5,-243,-244,-245,-246,-247,-248
set contour both
set hidden3d back offset 1 trianglepattern 3 undefined 1 altdiagonal bentover
#set palette rgbformulae 12,12,12
set view 50,320
set contour both
unset key
unset colorbox
$data << EOD
1175.4,1.61,-242.01
EOD
splot 'datx.dat' using 1:2:3 with pm3d, \
$data using 1:2:3 with labels point pt 7
下面是输出,我没有看到所需位置的点。我如何在 gnuplot 中实现这一点?
期望的输出:
它不起作用的原因是 set contours ... splot $DATA with labels
告诉程序绘制 $DATA 轮廓并沿着这些轮廓放置标签。显然单点数据集不可能生成等值线,所以没地方放标签。
将单个点放置在表面已知位置的最简单方法是:
set label 1 "" at 1175.4,1.61,-242.01 point pt 7
# make sure it is not obscured by the surface
set label 1 front
在底座上放置一个点也很容易,只要您准确指定要绘制底座的位置(而不是尝试预测自动放置的最终位置):
Zbase = -500
set xyplane at Zbase
set label 2 "" at 1175.4, 1.61, Zbase point pt 7