Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/matlab/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Matlab 是否以粗体显示某些勾号标签(但不是全部)?_Matlab_Plot_Matlab Figure - Fatal编程技术网

Matlab 是否以粗体显示某些勾号标签(但不是全部)?

Matlab 是否以粗体显示某些勾号标签(但不是全部)?,matlab,plot,matlab-figure,Matlab,Plot,Matlab Figure,在MATLAB中,我有一个带有记号标签的图形。我想在视觉上强调其中一些标签,但不是全部。有没有办法只将一些记号标签用黑体显示?记号标签不是单独的对象。它们属于轴,其性质由轴决定 您可以做的是删除记号标签并用文本对象替换它们。在这种情况下,可以控制文本属性 plot(magic(5)) xticks = get(gca,'XTick'); %# x tick positions xlabels = cellstr(get(gca,'XTickLabel')); %# get the x tick

在MATLAB中,我有一个带有记号标签的图形。我想在视觉上强调其中一些标签,但不是全部。有没有办法只将一些记号标签用黑体显示?

记号标签不是单独的对象。它们属于轴,其性质由轴决定

您可以做的是删除记号标签并用文本对象替换它们。在这种情况下,可以控制文本属性

plot(magic(5))
xticks = get(gca,'XTick'); %# x tick positions
xlabels = cellstr(get(gca,'XTickLabel')); %# get the x tick labels as cell array of strings
set(gca,'XTickLabel',[]) %# remove the labels from axes
n = numel(xlabels);
yl = ylim;
idx1 = 1:2:n; %# 1st set of ticks
idx2 = 2:2:n; %# 2nd set
t1 = text(xticks(idx1),repmat(yl(1),numel(idx1),1), xlabels(idx1), ...
    'HorizontalAlignment','center','VerticalAlignment','top');
t2 = text(xticks(idx2),repmat(yl(1),numel(idx2),1), xlabels(idx2), ...
    'HorizontalAlignment','center','VerticalAlignment','top');
set(t2,'FontWeight','bold') %# make the 2nd set bold

您还可以用第二个轴覆盖“原始”轴。在第二次配置时,请使用粗体。与链接轴一起,您可以保持适当的缩放行为

虽然我不知道过去是否不可能,但现在(至少从R2014b开始)可以使用tex标记:

plot(0:10,0:10);
h = gca;
h.XTickLabel = {'\bf \color{red} 0','2','\bf 4','6','\bf \color{red} 8','10',}

%% creat a new control vector, like here I want to make some special labels
as bold red. 

control_vector = cell(length(the_origional_Xlabels), 1);
control_vector(index) = {'\bf \color{red} '}; 

%% the put string cat the control vector and the original xlables
new_labels = control_vector, protease_universal_sorted));
xticks(1:length(the_the_origional_Xlabels));
xticklabels(new_labels)