八度不会超出 LaTex 符号



我遇到了一个问题,Octave 会在图形框中很好地渲染图形,但在使用 print() 命令时拒绝正确导出为 PNG。 当我尝试其他格式(如 EPS 或 JPG)时也是如此。

我目前的Octave版本是3.8.1-1ubuntu1,在这篇文章发布时是最新的。 我的 Ubuntu 版本也是 14.04。 代码运行时我没有收到任何错误消息。

用于绘图的脚本命令非常基本。 例如:

linewidth = 4;
xStr = 'Particle Diameter (mum)';
yStr = 'Scattering Cross-Section (mum^2)';
FontName  = 'Times New Roman';
LabelFontSize = 22;
AxisFontSize  = 18;
F1 = figure(1);
clf('reset');
plot(diameter*1e6,sigma_0*1e12,'k','linewidth',linewidth);
hold on
plot(diameter*1e6,sigma_1*1e12,'r','linewidth',linewidth);
X = xlabel(xStr);
set(X,'FontName',FontName,'fontsize',LabelFontSize);
Y = ylabel(yStr);
set(Y,'FontName',FontName,'fontsize',LabelFontSize);
axis([xMin xMax sigMin sigMax]);
set(gca,'fontsize',AxisFontSize,'linewidth',2);
legend('2.0 mum','3.8 mum',4);
print(F1,'Mie.png','-dpng');

奇怪的是,我有几个月前的其他图像,它们很好地渲染了LaTex位,甚至使用了几乎相同的代码。 这似乎最近的一些软件升级可能已经杀死了我的阴谋。

我很感激你能给我的任何帮助。 这个问题让我发疯。

这是使用 OpenGL 工具包 (graphics_toolkit FLTK) 时的已知问题,这是 octave3.8.x 中的默认值。以前的版本使用 gnuplot 进行打印。

所以你有两个选择:

  • 在进行任何绘图之前,请使用"graphics_toolkit gnuplot"切换回 gnuplot。您也可以将其添加到您的 .octaverc 中,以便在每次开始八度时设置它

  • 使用乳胶输出:http://wiki.octave.org/Printing_with_FLTK

最新更新