pdf中的干扰伪影

pdf中的干扰伪影,pdf,gnuplot,eps,Pdf,Gnuplot,Eps,我在用填充曲线绘制图时遇到了一个问题。在填充区域之间,似乎存在“间隙”。但是,这些瑕疵不会显示在打印上,而是取决于查看器和缩放选项。在Gnuplot中,我使用eps终端,eps文件看起来很棒,但是当我转换为pdf时会出现行。转换可以在打印后直接完成,也可以在将latex文档从dvi转换为pdf时完成。由于现在大多数文件都在这里展出,这是一个问题。当我在Gnuplot中直接使用pdfcairo终端时,这个问题也会出现,因此它不是由转换(epstopdf和ps2pdf)单独引起的 我附上了一个显示在

我在用填充曲线绘制图时遇到了一个问题。在填充区域之间,似乎存在“间隙”。但是,这些瑕疵不会显示在打印上,而是取决于查看器和缩放选项。在Gnuplot中,我使用eps终端,eps文件看起来很棒,但是当我转换为pdf时会出现行。转换可以在打印后直接完成,也可以在将latex文档从dvi转换为pdf时完成。由于现在大多数文件都在这里展出,这是一个问题。当我在Gnuplot中直接使用pdfcairo终端时,这个问题也会出现,因此它不是由转换(epstopdf和ps2pdf)单独引起的

我附上了一个显示在“acroread”中的情节截图(在其他pdf查看器中也有同样的问题)

有人知道如何摆脱它,但保持图形矢量化吗


如果您谈论的是红色和青色位,则间隙可能是由RGB屏幕上的红色+青色=白色造成的错觉。可能没有间隙,但是由于像素的接近,边界区域显示为白色

拍摄屏幕截图并放大,这样你就可以看到感知间隙周围的单个像素

如果是这种情况,可能为相邻颜色选择不同的配色方案会消除这种效果。除了红色和青色部分,我在任何地方都看不到与您描述相符的任何内容。

从中,这似乎是一个纯粹的Gostscript问题

使用Gnuplot的eps终端并使用

epstopdf -nogs <file.eps> -o <file.pdf>
epstopdf-nogs-o

解决了我系统上的问题。在相应的手册页中,“-nogs”选项指示epstopdf不要使用Gostscript。

我刚刚遇到了同样的问题。显然是两条曲线之间的填充 作为一组彼此不完全接触的多边形进行,因此 某些PDF查看器上可见的细白线

解决此问题的一种方法是在这些多边形边界上绘制。弗斯特 在gnuplot中定义最小和最大函数:

min(x, y) = x < y ? x : y
max(x, y) = x > y ? x : y
第一条绘图指令以灰色填充曲线之间的空间。 第二条绘图指令在每个点绘制大小为零(ps 0)的点 曲线(2)上的x值(1),薄(lw 0.5),连续(lt 1),灰色 (lc rgb“灰色”),从下到下的垂直误差条(Y误差条) 曲线2和3中的较高者

这包括了白线。为了得到最好的结果,你可能需要
对钢筋厚度进行试验(例如,lw 0.6、lw 0.2)。

问题仍然存在于Gnuplot 5.0.4中,至少存在于我用于输出PDF的cairolatex终端中。 我还想给两条曲线之间的区域上色,在我的例子中定义为函数

当我使用类似

f(x) = 2 + sin(x)
g(x) = cos(x)
plot '+' using 1:(f($1)):(g($1)) with filledcurves closed
我得到了与问题中相同的垂直白线

对于一条始终位于另一条之上的曲线,一个简单的解决方案是让Gnuplot用所需的颜色填充从上曲线到x轴的区域,然后从下曲线向下用白色覆盖:

f(x) = 2 + sin(x)
g(x) = cos(x)
plot f(x) with filledcurves x1, g(x) w filledc x1 fs lc rgb "white"
显然,这种Filled curves样式(不是在曲线之间,而是在曲线和轴之间)避免了梯形瑕疵。 这可以很容易地扩展到绘图数据文件和多个堆叠治疗,如问题中所述。只需从上到下绘制,并用白色完成最低曲线和x轴之间的空白区域


对于重叠曲线,如弗朗索瓦·托诺(françois tonneau)的回答中所述,最小和最大曲线的构造可能会起到作用。

这个问题在gnuplot 5.2中得到了解决,请参见

实际问题是,填充曲线以前绘制为许多四边形,这会由于抗锯齿在许多查看器中产生伪影(白色条纹)


由于5.2版填充曲线被渲染为单个多边形,这就避免了这些问题(请参见上面链接的问题)。

我的意思是垂直线,在灰色区域中最明显。无论它们是什么颜色,我只想要一个灰色区域,就像eps图形一样。我手头没有一个gnuplot的工作实例,所以我真的不能做更多的故障排除。答案只是猜测。尝试打印postscript并查看它如何实际呈现图形。您也可以通过其他PDF阅读器查看它。有相当多的OSS基于ghostscript引擎。看看这个问题是否发生在渲染引擎中。经过一些搜索,我发现了以下帖子:显然这是一个与抗锯齿相关的众所周知的问题。目前似乎没有工作可做。可以使用“convert+antialias”将eps转换为png,但这会在转换回eps时放大文件大小。…@RaphaelRoth-这些图形基本上是平面的颜色块。它们应该可以很好地压缩运行长度编码,但不会像矢量表示那样紧凑。我尝试过,但输出文件不是PDF,我无法用PDF查看器打开它
f(x) = 2 + sin(x)
g(x) = cos(x)
plot f(x) with filledcurves x1, g(x) w filledc x1 fs lc rgb "white"