GNU图:如何在同一帧上绘制球体和导入的文件?

时间:2016-07-10 03:39:30

标签: linux gnuplot

我对GNU情节很新。现在,我正在尝试绘制一个球体,并在相同的框架中导入.txt文件。但是,我无法找到合适的方法。以下是我的尝试:

  1. 仅使用 splot

    set parametric ; unset pm3d ; splot [-pi:pi] [-pi/2:pi/2] cos(u)*cos(v), cos(u)*sin(v), sin(u) ; unset parametric ; splot "traj_3dtest.txt" u 2:3:4

    但输出文件中只有splot "traj_3dtest.txt" u 2:3:4

  2. 使用 multiplot

    set parametric splot cos(u)*cos(v), cos(u)*sin(v), sin(u) splot "traj_3dtest.txt" u 2:3:4

    但是输出显示重叠了两个图,prnt_scrn_1

  3. 这里还有一个额外的问题:如何绘制球形“表面”?我的意思是,我不希望球体有轮廓而是灰色表面。

    注意:数据文件格式

    # T X Y Z Vx Vy Vz 1.00 -0.429 -0.847 0.314 -.09755 -.29510 -.15748 2.00 -0.429 -0.848 0.314 -.09752 -.29504 -.15750 3.00 -0.429 -0.848 0.313 -.09749 -.29497 -.15752 4.00 -0.429 -0.848 0.313 -.09746 -.29491 -.15755

1 个答案:

答案 0 :(得分:0)

如果你想要两个在同一帧中,但不是重叠:

splot cos(u)*cos(v), cos(u)*sin(v), sin(u), "traj_3dtest.txt" u 2:3:4

multiplot示例中,您将获得两个具有单独轴的图:

set multiplot layout 2,1
splot cos(u)*cos(v), cos(u)*sin(v), sin(u)
splot "traj_3dtest.txt" u 2:3:4

set multiplot

set origin 0,0.5
set size 1,0.5
splot cos(u)*cos(v), cos(u)*sin(v), sin(u)

set origin 0,0
set size 1,0.5
splot "traj_3dtest.txt" u 2:3:4