1

我有圆柱坐标中的点数据。我可以让它们像这里一样。现在线条看起来像那些

4

2 回答 2

2

要使用数据文件执行此操作,您可以使用set dgrid3dset table输出。您拥有的数据如下所示:

set pm3d
splot "data" u ($1*cos($2)):($1*sin($2)):3 w l

在此处输入图像描述

您可以进行插值set dgrid3d以提高分辨率:

set dgrid3d splines 20,20
set table "table"
splot "data" u 1:(acos(cos($2))):3

现在您的细化网格数据保存在文件“表”中。请注意,我将角度变量发送回 0 到 pi 间隔以改进插值。使用该splines选项很重要,否则您的数据将使用所有数据点进行插值,而不仅仅是相邻的数据点。绘制这个新数据:

set pm3d
splot "table" u ($1*cos($2)):($1*sin($2)):3 w l

在此处输入图像描述

更多数据意味着直线看起来不那么直,因为它们更多。您不需要使用 interpolate 选项set pm3d,只需调整set dgrid3d选项的扫描次数即可。

于 2014-03-22T20:53:43.243 回答
0

我想您可以使用用于给人一种正在绘制弧线的印象的样本数量。例如:

set parametric
set samples 10,10
set zrange [0:1]
set urange [0:2*pi]
set vrange [0:2*pi]
splot cos(u)*cos(v),cos(u)*sin(v),cos(u)

给出下图: 在此处输入图像描述

现在,如果您使用

set samples 10,100

你会得到“弧”,它们只是更直线:

在此处输入图像描述

如果您想要更多表面线,请使用以下set isosamples选项:

set isosamples 20,20

在此处输入图像描述

于 2014-03-22T07:06:19.947 回答