我发现可以在startup.m文件中添加set(0, 'DefaultAxesFontSize',14)
,这将更改图形的刻度、坐标轴标签和标题的默认字体大小。是否有可能为标题或坐标轴标签设置单独的默认字体大小?
我发现可以在startup.m文件中添加set(0, 'DefaultAxesFontSize',14)
,这将更改图形的刻度、坐标轴标签和标题的默认字体大小。是否有可能为标题或坐标轴标签设置单独的默认字体大小?
使用标准机制无法为标题和标签设置单独的默认字体大小。如果您愿意重载标记命令,则可以接近此目标。最简单的方法是修改xlabel
以允许默认字体。您需要添加:
if ~isempty(getappdata(ax, 'DefaultAxesXLabelFontSize'))
set(h, 'FontSize', getappdata(ax, 'DefaultAxesXLabelFontSize'));
else
if ~isempty(getappdata(get(ax, 'parent'), 'DefaultAxesXLabelFontSize'))
set(h, 'FontSize', getappdata(get(ax, 'parent'), 'DefaultAxesXLabelFontSize'));
elseif ~isempty(getappdata(0, 'DefaultAxesXLabelFontSize'))
set(h, 'FontSize', getappdata(0, 'DefaultAxesXLabelFontSize'));
end
end
立即前
set(h, 'String', string, pvpairs{:});
xlabel
。function varargout = xlabel(varargin)
ax = axescheck(varargin{:});
if isempty(ax)
ax = gca;
end
oldPath = pwd;
cd([matlabroot, filesep, 'toolbox', filesep, 'matlab', filesep, 'graph2d']);
xlabel = str2func('xlabel');
cd(oldPath);
oldFontsize = get(ax, 'FontSize');
if ~isempty(getappdata(ax, 'DefaultAxesXLabelFontSize'))
set(ax, 'FontSize', getappdata(ax, 'DefaultAxesXLabelFontSize'));
else
if ~isempty(getappdata(get(ax, 'parent'), 'DefaultAxesXLabelFontSize'))
set(ax, 'FontSize', getappdata(get(ax, 'parent'), 'DefaultAxesXLabelFontSize'));
elseif ~isempty(getappdata(0, 'DefaultAxesXLabelFontSize'))
set(ax, 'FontSize', getappdata(0, 'DefaultAxesXLabelFontSize'));
end
end
varargout{1:nargout} = xlabel(varargin{:});
set(ax, 'FontSize', oldFontsize);
if ~nargout
varargout = {};
end
end
setappdata(0, 'DefaultAxesXLabelFontSize', 36)
或者
setappdata(gcf, 'DefaultAxesXLabelFontSize', 36)
或者
setappdata(gca, 'DefaultAxesXLabelFontSize', 36)
setappdata
而不是set
。
get(0,'Factory')
和get(0,'default')
,除了上面提到的那个之外,没有看到任何与图形字体大小有关的内容... - Hanmyo