【发布时间】:2016-10-12 13:03:28
【问题描述】:
我正在尝试以空间中粒子的 X、Y 和 Z 位置的形式绘制 3D 数据。我有很多粒子,我想以某种简洁的 2D 方式在 X、Y 和 X、Z 平面中表示。我认为最好的方法是等高线图。我的数据有 3 列的形式,每列包含一个粒子的 X、Y 或 Z 位置。作为奖励,我有 3 种不同类型的粒子,我想知道是否可以以干净的方式将它们放在 1 个图中,如果不能,我可以制作 3 个单独的图,但我不想这样做。我也想使用 gnuplot 来做到这一点,因为我也在其中制作了我的 2D 图,所以目标是只运行一个脚本并制作所有图。我的问题是,我该怎么做?我在 gnuplot 中阅读了一些关于等高线图的内容,但它们似乎都涉及两个变量的函数或其他类型的数据,而且我不知道如何以我可以使用的方式修改代码,因为我是对 gnuplot 来说还是很新的。
感谢任何帮助。
【问题讨论】:
-
dgrid3d可以从您的粒子云中进行平滑的 2D 投影,set contour可以绘制轮廓。添加unset surface+set view map,并查看gnuplot.sourceforge.net/demo/contours.html上的演示 -
我尝试了这个,但它给了我非常奇怪的结果。它在一个非常大的白色屏幕中间绘制了一些不同颜色的点,就是这样,这就是为什么我认为我必须做其他事情。
-
向我们展示您尝试过的什么。您可以使用
splot "+" using (rand(0)):(rand(0)):(rand(0))或类似的方式制作一些虚拟数据,因此您不必上传原始数据。 -
我按照您的描述再次尝试了它,它成功了!我想我弄乱了设置轮廓和设置视图地图等的顺序。非常感谢!
-
在 gnuplot 中设置的顺序应该无关紧要。如果他们这样做,那很可能是一个错误。你能重现它吗?