使用contour
(下图中的第一个图)在MATLAB 2016a中绘制了2D数据矩阵,然后我以*.emf
格式保存为图形。接下来,我将图形(emf
)插入到MS Word文档中。最后,word文档被转换为pdf
文件。
我发现图中有许多白线(处于pdf
格式时),如下图所示。我的问题是如何删除这些白线?
代码附在此处:
path = 'C:\Users\Administrator\Desktop\';
data = importdata([path, 'lsa2.txt'], ' ', 6);
cdata = data.data;
n = 25;
contourf(cdata,n, 'LineStyle', 'none');
colormap(jet);
axis equal;
可以在此处访问数据:https://www.dropbox.com/s/hzf75qiju6zsy9i/lsa2.txt?dl=0
答案 0 :(得分:4)
正如我在评论中提到的,这是MATLAB导出图形的方式的错误,正如Yair Altman和Dene Farrell所解释的那样:
我发现当使用
painters
渲染器时会发生这些白线伪影... [这是]矢量化的默认渲染[格式引擎](EPS / PDF)格式。
Matlab导出有两个独立的问题:
1。每个人都注意到的主要事情是补丁被分解为三角形,如果在插图画家中进行检查,每个三角形都是一个单独的路径对象。
2。 Matlab有时候会增加无关的裁剪路径'即使没有断裂路径问题,也会产生明显的白线。
ambramson提出的一个解决方法如下:
1。将该图保存为
.eps
文件(使用
2。使用文本编辑器,从以下位置更改eps标题中的行:/f/fill ld
到
/f{GS 1 LW S GR fill}bd
并将该行向下移动几行,位于
/LW/setlinewidth ld
行的正下方。
从这里开始,您的eps文件应该在所有pdf查看器上正常显示。