我在YTickLabel
中无法理解的错误:
h2=bar(myData);
ylabels=['1';'1.5';'2';'2.5';'3'];
set(gca,'XTickLabel',applicationNames),'XTick',applicationNames),'YTickLabel',ylabel));
p.s:我也试过这个但没有成功:
ax=gca
ax.YTickLabel=['1';'1.5';'2';'2.5';'3'];
我收到此错误:
Error using vertcat
Dimensions of matrices being concatenated are not consistent.
答案 0 :(得分:1)
您正在尝试创建一个字符数组。在这种情况下,您尝试创建一个2D矩阵,其中列数应具有相同的字符数,行数表示您拥有的标签数。对于字符串,每列的最大字符数为三(数字/点/数字)。因为您的字符长度只有1(即只是一个数字),所以会出现不一致的连接错误,因为它期望所有字符在数组中的长度为3。
您实际需要使用的是单元格数组,以适应每个y
刻度标签的不定大小。因此:
ax.YTickLabel={'1';'1.5';'2';'2.5';'3'};
或者,因为您的标签是数字,所以您只需使用数字数组:
ax.YTickLabel = [1;1.5;2;2.5;3];
如果要将x
和/或y
轴标记为除数字之外的其他内容,则使用单元格数组。可以使用文本标记y
轴,例如:
ax.YTickLabel = {'John'; 'Paul'; 'George'; 'Ringo'; 'The Beatles'};