使用x,y,z坐标绘制3d表面中的点

时间:2015-06-11 04:40:07

标签: 3d gnuplot

我需要根据名为test.dat的文件中的x,y,z coordiantes值在3d曲面中绘制一些点

test.dat文件包含

At-No X Y Z

 6                   3.532210   -2.171743    0.921140
 7                   1.164869   -1.418981    0.782133
 1                   2.454732    2.332989   -0.907213
 6                  -3.246376   -1.047325   -0.602590
 6                  -2.620684    0.053348   -0.013310
 6                  -4.569969   -1.249720   -0.617858
 6                  -3.436335    1.003953    0.597094
 1                  -5.328079   -0.323336   -0.025131

第一个值表示At-no(原子序数),第二个值表示x坐标值,第三个值表示y坐标值,最后第四个值表示z坐标值。

我试过Gnuplot

splot "test.dat" u 1:2:3 ps variable pt 7

但它会给出一个空白屏幕。 我希望在3D表面上显示点.... At-no 6显示红色,7显示蓝色,1显示绿色。 是否可以显示这样的点

先谢谢................

1 个答案:

答案 0 :(得分:1)

您可以使用条件绘图。

splot 'data.txt' u ($1==6 ? $2:1/0):3:4 title 'At-no 6' w points pt 7, \
      'data.txt' u ($1==7 ? $2:1/0):3:4 title 'At-no 7' w points pt 7, \
      'data.txt' u ($1==1 ? $2:1/0):3:4 title 'At-no 1' w points pt 

这会创建

enter image description here