如何更改 matlab 直方图中的刻度数并更改轴号字体大小
How do I change the number of ticks in matlab histogram and change axis numbers font size
我只要
x-axis
显示1 2 3 4 5 6
y-axis
显示0 20 40 60 80 100
- 将数字字体大小更改为 14
我试过设置不同的轴 property
(参考下面脚本中注释的代码行)但是 none 它们会影响图表。
%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-axis
显示 1 2 3 4 5 6
,您必须有两种可能性:
改变调用hist
函数的方式如下:
% hist(DiceSum,1:NDice*6)
hist(DiceSum,1:6)
这是因为在用2个参数调用hist
时,第二个应该是一个向量,在那种情况下,hist
returns的分布中心由 x 指定的 length(x) 个 bin 中的 Y(x
第二个参数)- R2012b hist help
直接设置x轴xtick
如下:
set(gca,'xtick',[0:6])
要让 y-axis
显示 0 20 40 60 80 100
,您必须按如下方式设置 y 轴 ytick
:
set(gca,'ytick',[0:20:100])
要将 x
和 y
轴刻度字体大小更改为 14,您必须按如下方式设置轴 fontsize
:
set(gca,'FontSize',14)
希望这对您有所帮助。
我只要
x-axis
显示1 2 3 4 5 6y-axis
显示0 20 40 60 80 100- 将数字字体大小更改为 14
我试过设置不同的轴 property
(参考下面脚本中注释的代码行)但是 none 它们会影响图表。
%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-axis
显示 1 2 3 4 5 6
,您必须有两种可能性:
改变调用
hist
函数的方式如下:% hist(DiceSum,1:NDice*6)
hist(DiceSum,1:6)
这是因为在用2个参数调用hist
时,第二个应该是一个向量,在那种情况下,hist
returns的分布中心由 x 指定的 length(x) 个 bin 中的 Y(x
第二个参数)- R2012b hist help
直接设置x轴
xtick
如下:set(gca,'xtick',[0:6])
要让 y-axis
显示 0 20 40 60 80 100
,您必须按如下方式设置 y 轴 ytick
:
set(gca,'ytick',[0:20:100])
要将 x
和 y
轴刻度字体大小更改为 14,您必须按如下方式设置轴 fontsize
:
set(gca,'FontSize',14)
希望这对您有所帮助。