如何解决使用zerrorfill从多个2D数据文件中生成gnuplot 3D围栏图
我目前正在gnuplot围栏图中绘制多个2D(x,y)数据文件。
我已经创建了一个包含所有文件的列表
list='file1.dat file2.dat file3.dat'
以这种方式添加第三轴的z值
z_index='1 2 3'
然后我可以绘图,以便每个数据文件对应一个不同的z值
splot for [i=1:words(list)] word(list,i) u (real(word(z_index,i))):($1):($2) w l
但是,我想使用带有透明性的zerrorfill来做同样的事情,因为fillcurve不允许我以直接的方式来做。
我从手册中知道,篱笆图是使用输入列i y z_base z_base Fi(y)
和zerrorfill通过散点图生成的,但是我不知道如何传输代码以完全填充zerrorfill语法。
有解决方案吗?请对代码发表评论!
解决方法
如果您的gnuplot足够新,可以使用绘图样式“ zerrorfill”,那么它也足够新,可以使用数组。我建议使用数组作为文件名和y(而非z)索引比使用“ word(string,i)”更容易阅读。
您没有确切解释2D数据文件中的y值。我将在第2列中假设一个y值,并使用一个围栏图填充y = 0和y = column(2)之间的区域,但对于3D图,我们将其用于z而不是y。
array file[3] = ["file1.dat","file2.dat","file3.dat"]
array y_index[3] = [1,2,3]
set zrange [0:*]
set xyplane 0
splot for [k=1:3] file[k] using 1:(y_index[k]):2:(0):2 with zerrorfill \
linetype k fillstyle transparent solid 0.5
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。