在尝试尝试回答这个问题的过程中,我意识到除了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
产生以下
这些多余的行不会出现的地方。
这使我怀疑还有另一种方法可以控制这些额外的行,但是我不知道它是什么。哪些选项控制着这些,如何将其关闭?完全关闭边界可以消除它,但这不是可取的。
同样看这个问题,在我看来,它在gnuplot从数据插入表面的任何时候都会发生,但是如果无法以某种方式将其关闭,我会感到惊讶。
编辑:与此问题相关的一个答案。这个问题不是重复的,因为它处理数据文件,而且我正在使用表面函数,但对于找到一个可能的解决方案(这已写为答案)很有帮助。
我仍然希望解决方案有所减少。
我有一个可能的解决方案,但我不太喜欢。
我们可以使用该函数生成数据文件或数据块,然后对其进行绘制。该问题是塞巴斯蒂安Guarnay链接到他的回答是确定如何做到这一点的帮助。
在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范围(最终将这些线移除的线)进行绘制。
这产生
似乎有点回旋处,但似乎确实达到了我想要的。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句