如何更改matlab直方图中的记号数和更改轴数字体大小
我只想要如何更改matlab直方图中的记号数和更改轴数字体大小,matlab,histogram,Matlab,Histogram,我只想要 x轴显示1 2 3 4 5 6 y轴显示0 20 40 60 80 100 将数字字体大小更改为14 我尝试过设置不同的axis属性(参考下面脚本中注释的代码行),但是它们都不会影响图形 %Code to generate the diceSum DiceSum = myDiceRoller(1,500); figure(1) %Create the histogram hist(DiceSum,NDice*6) %Label the axes xlabel('Value
显示1 2 3 4 5 6x轴
显示0 20 40 60 80 100y轴
- 将数字字体大小更改为14
属性(参考下面脚本中注释的代码行),但是它们都不会影响图形
%Code to generate the diceSum
DiceSum = myDiceRoller(1,500);
figure(1)
%Create the histogram
hist(DiceSum,NDice*6)
%Label the axes
xlabel('Value of Roll','FontSize',16)
ylabel('Number of Times Rolled','FontSize',16)
%set(gca,'X','FontSize',14)
%set(gca,'YTickLabel',{'0' ;'100'})
%set('xtick','FontSize',14)
%set('Xlim',[0,6], 'Ylim',[0 ,100])
%set('xtick',[0:1:6],'ytick',[0:20:100])
%set(gca,'XLim',[0 6])
%set(gca,'XTick',[0 1 2 3 4 5 6])
%set(gca,'XTickLabel',str2mat{'0','1','2','3','4','5','6')
%xlim([0 6])
这是一个单独的函数,我用它来创建数据和直方图
function [DiceSum] = myDiceRoller(NDice,NRolls)
DiceSum = zeros(1,NRolls);%
for i = 1:NRolls;% on roll 1...roll 2
for j = 1:NDice;% on roll 1 , roll #s of die
n = ceil(rand(1)*6);
DiceSum(1,i) = DiceSum(1,i) + n;
end
hist(DiceSum,NDice*6)
xlabel('Value of Roll')
ylabel('Number of Times Rolled')
end
要使x轴
显示1 2 3 4 5 6
必须有两种可能性:
- 要更改调用
hist
函数的方式,请执行以下操作:
set(gca,'ytick',[0:20:100])
set(gca,'FontSize',14)
%hist(DiceSum,1:NDice*6)
hist(DiceSum,1:6)
这是因为在使用2个参数调用hist
时,第二个参数应该是一个向量,在这种情况下,hist
返回Y在长度(x)个箱子中的分布,中心由x指定(是x
第二个参数)
R2012b hist help
- 要直接设置x轴,请单击如下所示:
set(gca,'ytick',[0:20:100])
set(gca,'FontSize',14)
set(gca,'xtick',[0:6])
0 20 40 60 80 100
必须按如下方式设置y轴ytick:
set(gca,'ytick',[0:20:100])
set(gca,'FontSize',14)
要将x轴和y轴勾选字体大小更改为14,必须按如下方式设置轴fontsize
:
set(gca,'ytick',[0:20:100])
set(gca,'FontSize',14)
希望这能有所帮助。这应该行得通。生成图形的其余代码在哪里?在不同的脚本中。将实际代码放入。不是图像。可能是我没有正确调用创建数据的脚本吗@瑞伦