如何设置'渲染器'?

时间:2014-07-19 14:38:01

标签: matlab eps contourf

我希望以EPS格式保存数字:

saveas(gca, 'test.eps','epsc');

该图用' contourf'绘制。以及用于绘制箭头的自定义函数。 (我使用的是其他人编写的package,我对所有代码并不完全熟悉)

选择不同的渲染器时有3种情况。

案例1:当我使用

set(gcf,'renderer','painters');

每股盈利数字不完整,但是很清楚'并且体积小。如图1(转换为png): enter image description here

案例2:当我使用

set(gcf,'renderer','opengl');

 do not use any 'renderer'

EPS数字完整但模糊,如图2所示: Figure 2

案例3:当我使用

set(gcf,'renderer','zbuffer');

set(findobj(gca,'type','patch'),'alphadatamap','none','facealpha',1); 

EPS数字既不完整又模糊。

'不完全'是指钟形外面的部分'不见了。

'模糊'意思是这个数字是锯齿形的。

我根据作者notes(5.k以下)使用这些“渲染器”。

这是一个问题:如何使EPS数字既完整又清晰?

1 个答案:

答案 0 :(得分:0)

正如@RTL所提到的,案例(1)和(3)的问题在于你使用的是透明贴片(小波分析中的“影响锥”),而且画家也没有 zbuffer 支持透明度(zbuffer已在更新版本的Matlab中删除)。如果更改任何对象的alpha值(透明度),MatLab将自动切换到 opengl 作为图形渲染器。

现在,对于模糊,您可以通过将“GraphicsSmoothing”选项设置为“off”来解决此问题(请参阅此处的matlab documentation),但此选项仅可用{{3} }。或者,您可以查看此from 2014b onwards

最后,如果你有一个很好的矢量编辑程序(比如说Illustrator),你可以从Matlab导出画家渲染的EPS文件(PDF也可以),并使用外部编辑器来制作影响力半透明(你会发现EPS中的轮廓完好无损)。更少的工作:使用一条线描绘影响锥而不是补丁。