在尝试回答this question时,我意识到除了set border
之外必须有一个我不知道的边框选项。
假设我们运行以下命令
set border 15
splot sin(x)
边框应绘制基础上的所有边界线,而不是其他边界线。但是,这会产生以下结果:
这里我们在侧面有额外的线条,从底面延伸到底面。尝试使用边框1,它应该只绘制左下方的前面,我们看到相同的。
这些被边框0消除
并且使用边框255(绘制基部和所有四个边),我们看到这些额外的线条不如延伸到表面边缘的实际边线那么长。
额外的线条仅延伸到表面,而边界线则一直延伸。这似乎只发生在表面上(并且出于某种原因与链接的问题有关),如绘制以下数据
1 2 3
3 4 5
6 7 8
9 0 1
2 3 4
5 6 7
8 9 0
与
set border 15
splot datafile w lines
产生以下
这些额外的行不会发生。
这让我怀疑控制这些额外线路有另一种选择,但我不知道它是什么。什么选项控制这些,以及如何关闭它?完全关闭边界会变得干旱,但这是不可取的。
同样看一下this question,在我看来,它会随时出现gnuplot从数据中插入一个曲面,但如果不能以某种方式关闭它,我会感到惊讶。
修改:一个与this question相关联的答案。问题不是重复,因为它处理数据文件,我正在使用表面函数,但它有助于找到一个可能的解决方案,我已经写了一个答案。
我仍然希望解决问题的可能性较小。
答案 0 :(得分:1)
这似乎是这个问题的重复:Remove z axis in gnuplot,它建议添加一个可忽略的偏移来移除这些额外的轴。
答案 1 :(得分:0)
我有一个可能的解决方案,但我真的不喜欢它。
我们可以使用该函数生成数据文件或数据块,然后绘制它。 SébastienGuarnay在他的回答中联系到的question有助于确定如何做到这一点。
在gnuplot 5中,以下命令可以或多或少地实现此
set table $k
splot sin(x)
unset table
set border 15
set xrange[-10.1:10.1]
set yrange[-10.1:10.1]
splot $k with lines
这里我们使用表格输出来捕捉要绘制的点,然后将它们绘制成一个数据文件,根据链接的问题答案稍微扩展x和y范围(这是最终删除这些线条)。
这会产生
似乎有点迂回,但似乎达到了我想要的效果。