[英]gnuplot - how to obtain contour lines with the same level color of the 3d plot
我有一个用gnuplot获得的三维图,我也计算了轮廓线:
在s设置pm3d
设置调色板rgbformulae 33,13,10
设置轮廓
未设置的clabel
设置cntrparam级别增量1,1,5
sp“dati.dat”u 1:2:3 wl ls 7 notitle
我真的想用三维图中相应级别指定的相同颜色绘制轮廓线。 我没有找到任何有用的帖子。 这有可能吗?
您必须在sp
命令中包含palette
命令:
set pm3d at s
set palette rgbformulae 33,13,10
set contour
unset clabel
set cntrparam levels incremental -100,10,100
sp x*y w l ls 7 palette notitle
palette
选项将您的定义从第2
行应用到轮廓线,您将获得此图:
注意 :由于缺少合适的输入文件,轮廓水平更改为-100,10,100
以适应我选择绘制的函数x*y
。
如果你想在表面上保持黑色网格,我建议使用multiplot
并简单地在表面上绘制网格。 这是更新的代码:
set pm3d at s
set palette rgbformulae 33,13,10
set contour
unset clabel
set cntrparam levels incremental -100,10,100
set multiplot
sp x*y w l ls 7 palette notitle
unset contour
sp x*y w l ls 7 notitle
unset multiplot
重要的是unset
两个绘图命令之间的轮廓。 这样,您将只使用第二个sp
命令获取网格(也没有palette
选项)。
现在,示例如下所示:
如果您尝试使用multiplot
-command手动旋转生成的图形,则会松开轮廓线(因为它们是先绘制的),如本答案中所述 。 如果默认方向不符合您的需要,请在调用multiplot之前使用set view
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.