我正在使用 Matlab 绘制一些地图,这些地图用于mapshow
从 shapefile 绘制国家边界。然后我使用包将它们导出为 PDF 和 EPS 格式export_fig
。这使用 Matlab 2014a 完全正常,但我刚刚升级到 Matlab 2014b 以利用其他改进的东西,现在我的国家边界都是锯齿状的。边框仅在文件的保存版本上看起来参差不齐。如果我放大图形窗口,轮廓不是那样的。
以下是重要的代码片段。这是一个自定义的 shapefile,所以我不知道如何将它放在这里以便人们可以复制它。
该位读取 shapefile 并绘制它。如果相关,显示类型是“多边形”,因此去掉了,'FaceColor'
所以我可以看到我在下面绘制的内容(图像背景中的绿色位,使用 绘制pcolor
)。
thaiborder=shaperead('Thailandborder');
mapshow(thaiborder,'FaceColor','none');
这就是我导出图形的方式。
export_fig test.eps -r600 -painters
export_fig test.pdf -r600 -painters
这是来自 Matlab 2014a 的带有平滑边框的版本:
这与图像的大致相同区域,带有来自 Matlab 2014b 的锯齿状边框:
有谁知道为什么会出现这些差异?我希望边框与第一张图像中的一样,但我需要 Matlab 2014b 的“改进”功能来处理同一图像中的另一件事。我需要改变什么?
编辑添加:我一直在与的创建者联系,export_fig
他认为这是由 Matlab 现在使用斜接而不是圆形连接引起的。显然我必须写信给 MathWorks 投诉。我没有将此作为答案,因为其他人可能能够为我提供解决方案。