2011-04-17 76 views
10

我有一个数据文件,其中包含一堆x,yz。我想使用gnuplot绘制出这些点with pm3d但是这需要我打开set dgrid 10,10,1(数量应有所不同)。问题是我的数据被扭曲(当我将它们放在一起时,点不在pm3d表面上)。如何正确使用`gnuplot`中的`dgrid3d`?

我应该怎样使用dgrid3d?这些点是从c++程序生成的,所以我可以自己选择x和y间距。

我的数据是这样的:

# X Y Z 
    1 2 3 
    2 2 4 
    ... 

我想它是通过在三维空间中的这些点上运行的彩色表面。的xy数据被均匀地间隔开,而z数据是xy点的功能。

+0

1.你能张贴您的数据文件的一小部分 2.你应该最终的情节其实是什么样子? 3D空间中的点,等高线图,连接点,... – Woltan 2011-04-18 06:35:22

+0

@ woltan:完成! – romeovs 2011-04-18 10:39:19

+0

哇。这个问题有'受欢迎的问题'徽章(1k的意见),而不是一个upvote。 – romeovs 2012-04-01 20:49:00

回答

8

如果您准备好您的数据文件中的Data.dat那么试试这个:

set dgrid3d 10,10 
set style data lines 
set pm3d 
splot "Data.dat" pal 
  • dgrid3d告诉GNUPLOT多少条目有在X和Y方向(这些都是2个逗号分隔参数)
  • style data lines让gnuplot的阴谋与线条,而不是点的结果
  • pm3d填充表面颜色(如果你离开这个远离你只会见线)
  • pal使线条出现在指定的值

还有更多你可以设置选项的颜色,但我觉得那些最相关的。

+0

好吧,我的问题其实是针对如何使用'dgrid3d'?数字应该是多少? – romeovs 2011-04-18 11:41:39

+0

这些数字指定在x方向和y方向上有多少个元素。所以如果你有20个x值和10个y值,那么在dgrid中指定参数为20,10 – Woltan 2011-04-18 12:12:30

+0

我有100x100的数据,但是当我使用'dgrid3d 100,100,1'时,这提供了一个扭曲的情节(情节是在某些点平衡)。使用'dgrid3d 100,100,3'给出了一个通过点的曲面,但曲面不应该是这样的。 – romeovs 2011-04-18 12:39:59