我尝试在 MATLAB 图形图中使用 AvantGarde 字体。 但是在图中,没有显示字体。 我在 Ubuntu 上有 R2015a MATLAB 版本。
当我使用*listfonts
命令时,AvantGarde字体被列为可用。
使用 uisetfont
时,AvantGarde 字体可以正常工作并显示,没有任何问题。如此处所示(uisetfont
命令):
这是我设置字体的代码的摘录:
fontname = 'AvantGarde';
set(0,'DefaultAxesFontName',fontname,'DefaultTextFontName',fontname);
这里是我出现问题的输出的摘录:
我不明白问题出在哪里以及为什么选择的字体没有用于我的图形,任何帮助将不胜感激
最佳答案
在创建图形之前您是否设置了默认字体?
以下示例适合我:
clear all;
fontname = 'AvantGarde';
set(0,'DefaultAxesFontName',fontname,'DefaultTextFontName',fontname);
figure;
plot(1:10,1:10);
xlabel('test x');
ylabel('test y');
作为替代方案,您可以在创建图窗后通过存储 x 和 y 标签的句柄来设置适当的属性。
clear all;
fontname = 'AvantGarde';
% set(0,'DefaultAxesFontName',fontname,'DefaultTextFontName',fontname);
figure;
plot(1:10,1:10);
xLabelHandle = xlabel('test x');
yLabelHandle = ylabel('test y');
set(yLableHandle,'Fontname',fontname);
关于Matlab,在图形中设置字体,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40673900/