在Matlab标题中使用平方根

在Matlab标题中使用平方根,matlab,Matlab,我的代码将演示我在标题中使用latex编码时遇到的困难 theta=linspace(0,2*pi,40); phi=linspace(0,pi/4,40); [theta,phi]=meshgrid(theta,phi); rho=3; x=rho*sin(phi).*cos(theta); y=rho*sin(phi).*sin(theta); z=rho*cos(phi); mesh(x,y,z) hold on r=linspace(0,3*sin(pi/4),40);

我的代码将演示我在标题中使用latex编码时遇到的困难

theta=linspace(0,2*pi,40); 
phi=linspace(0,pi/4,40); 
[theta,phi]=meshgrid(theta,phi); 
rho=3; 
x=rho*sin(phi).*cos(theta); 
y=rho*sin(phi).*sin(theta); z=rho*cos(phi); 
mesh(x,y,z) 
hold on 
r=linspace(0,3*sin(pi/4),40); 
theta=linspace(0,2*pi,40); 
[r,theta]=meshgrid(r,theta); 
x=r.*cos(theta); 
y=r.*sin(theta); 
z=r; 
mesh(x,y,z) 
xlabel('x-axis') 
ylabel('y-axis') 
zlabel('z-axis') 
h=title('Graph of $x^2 + y^2 + z^2 = 9$ and $z = \sqrt{x^2+y^2}$',...
    'interpreter','latex',...
    'FontSize',14) 
view(130,20)
我的形象:

正如你所看到的,标题是不可读的。我在MacBookPro上使用的是R2013a版本,使用的是最新版本的Mavericks


如何使我的标题可读?

这是一个关于发布的棘手问题。首先,Matlab使用大多数属性为默认值的图形,包括
渲染器
属性

好消息 可以通过在命令窗口中运行以下行来更改当前会话的设置

set(0,'DefaultFigureRenderer','painters')
也可以通过“发布”菜单将其添加到发布选项中

然后在运行代码之前将该行添加到“Matlab表达式”框中


坏消息 然而,这只能实现发布不允许pdf文件使用矢量图像格式的效果。
根据经验,来自Matlab的光栅图像中的文本方程仅在不调整大小的情况下显示良好(幸运的是,自动执行non)

“发布帮助”中没有不支持它们的事实。下面publish.m中的代码片段显示pdf输出仅支持bmp、jpeg或无图像

if strcmp(options.format,'pdf') && ...
        ~isempty(options.imageFormat) && ...
        ~(strcmp(options.imageFormat,'bmp') || strcmp(options.imageFormat,'jpeg'))
    error(pm('InvalidPDFImageFormat'));
end
知道PDF可以支持向量图像,我们可以忽略这一点吗? 不仅如此,pdf缺少矢量支持似乎是因为Matlab使用底层java创建pdf文件

由于强制Matlab发布带有矢量图像的pdf文件而导致的错误

Reason: org.apache.xmlgraphics.image.loader.ImageException: 
    Cannot load image (no suitable loader/converter combination available)

注意:设置默认值的另一种方法是在设置属性等后,通过捕捉图形句柄或使用
gcf

添加行
集合(gcf,'renderer','painters')

将matlab图形导出到*.eps或*.png(或您喜欢的格式)文件后,效果会更好吗?在Windows7上使用2013a,屏幕截图看起来不错!这似乎是一个特定于平台的字体问题。尝试使用默认字体大小查看是否有帮助。更改图形的
'Renderer'
属性是否有帮助?第一条注释的答案是“是”,当导出到PDF文件时效果会更好。然而,当我们在课堂上做这些时,这是一个问题,学生们无法阅读标题。当我将figures renderer属性更改为“Painters”时,情况要好得多。然而,在做作业时,我的学生使用手机模式,然后“发布”他们的最终作品。在点击“发布”按钮并在那里打印之前,如何设置渲染器?这是一个非常激动人心的回答。我可以探索很多选择。谢谢