科研笔记第三期——一条文章带你玩转柱状图

目录

一、柱状图/条形图基础

二、具有分布拟合的直方图(histfit)

三、柱状图/条形图重叠

四、柱状图/条形图正负填充颜色不同

五、柱状图/条形图添加数字

六、参考内容


一、柱状图/条形图基础

例1:bar(y)为y中的每个元素创建一个条形图。如果y是矩阵,则bar根据y中的行对条形图进行分组。分别以纵向和横向为例:

y = [75 91 105 123.5 131 150 179 203 226 249 281.5];
bar(y);

科研笔记第三期——一条文章带你玩转柱状图_第1张图片

y = [75 91 105 123.5 131 150 179 203 226 249 281.5];
barh(y);

科研笔记第三期——一条文章带你玩转柱状图_第2张图片

例2:bar(x,y)在x指定的位置绘制条形图。

x = 1900:10:2000;
y = [75 91 105 123.5 131 150 179 203 226 249 281.5];
bar(x,y);

科研笔记第三期——一条文章带你玩转柱状图_第3张图片

例3:bar(___,width)设置柱状图相对宽度,用于控制组内柱状图的间距。将宽度指定为标量值。将此选项与前面语法中的任何输入参数组合一起使用。

y = [75 91 105 123.5 131 150 179 203 226 249 281.5];
bar(y,0.4)

科研笔记第三期——一条文章带你玩转柱状图_第4张图片

例4:bar(___,style)指定条形图组的样式。例如,使用“stacked”将每组显示为一个多色条。

y = [2 2 3; 2 5 6; 2 8 9; 2 11 12];
bar(y)

科研笔记第三期——一条文章带你玩转柱状图_第5张图片

y = [2 2 3; 2 5 6; 2 8 9; 2 11 12];
bar(y,'stacked')

科研笔记第三期——一条文章带你玩转柱状图_第6张图片
例5:bar(___,color)设置所有条形图的颜色。例如,红色条使用“r”。

y = [75 91 105 123.5 131 150 179 203 226 249 281.5];
bar(y,'r')

科研笔记第三期——一条文章带你玩转柱状图_第7张图片

例6:bar(___,Name,Value)使用一个或多个名称-值对参数修改条形图。这些设置适用于打印的所有条形图。例如,使用“EdgeColor”、“lack”以黑色勾勒所有条形图。

y = [75 91 105 123.5 131 150 179 203 226 249 281.5];
bar(y,'FaceColor',[0 .5 .5],'EdgeColor',[0 .9 .9],'LineWidth',1.5)

科研笔记第三期——一条文章带你玩转柱状图_第8张图片

例7:bar(ax,___)绘制到由ax指定的轴中,而不是绘制到当前轴(gca)中。选项ax可以位于前面语法中的任何输入参数组合之前。

例8:b=bar(___)返回一个或多个bar对象。如果y是一个向量,则bar将创建一个bar对象。如果y是矩阵,则bar为每列创建一个bar对象。使用b可以在创建条形图对象后对其进行将来的修改。

y = [2 4 6; 3 4 5];
b = bar(y);
b(2).LineWidth = 2;
b(2).EdgeColor = 'red';

科研笔记第三期——一条文章带你玩转柱状图_第9张图片

二、具有分布拟合的直方图(histfit)

例1:

histfit(data) 使用等于数据中元素数平方根的箱数绘制数据中值的直方图,并拟合正态密度函数。

normrnd产生正态分布随机数的函数,例normrnd(0,1,1,6)产生1行六列均值为0,标准差为1的随机数。

fitdist 获取拟合中使用的参数。

r = normrnd(10,1,100,1);
histfit(r);%可尝试histfit(r,6),观察结果
pd = fitdist(r,'Normal')%获取拟合参数

科研笔记第三期——一条文章带你玩转柱状图_第10张图片

例2:betarnd 贝塔分布的随机数生成器

b = betarnd(3,10,100,1);
figure
histfit(b,10,'beta')%‘’内代表拟合方式
figure
histfit(b,10,'kernel')
figure
h = histfit(r,10,'normal')%h(1)代表柱状图,h(2)代表线条
h(1).FaceColor = [.8 .8 1];
h(2).Color = [.2 .2 .2];

科研笔记第三期——一条文章带你玩转柱状图_第11张图片

科研笔记第三期——一条文章带你玩转柱状图_第12张图片

科研笔记第三期——一条文章带你玩转柱状图_第13张图片

三、柱状图/条形图重叠

x = [1 2 3 4 5];
temp_high = [37 39 46 56 67]; 
w1 = 0.5; 
bar(x,temp_high,w1,'FaceColor',[0.2 0.2 0.5])
temp_low = [22 24 32 41 50];
w2 = .25;
hold on
bar(x,temp_low,w2,'FaceColor',[0 0.7 0.7])
hold off
grid on
ylabel('Temperature (\circF)')
legend({'Average High','Average Low'},'Location','northwest')
ax = gca;
ax.XTick = [1 2 3 4 5]; 
ax.XTickLabels = {'January','February','March','April','May'};
ax.XTickLabelRotation = 45;

科研笔记第三期——一条文章带你玩转柱状图_第14张图片

四、柱状图/条形图正负填充颜色不同

data=[5 -5 6 2 -3 2 -8 6 -4 6 5 -3 -1 5 6;
    1 2 3 4 5 6 7 8 9 10 11 12 13 14 15];
data=data';
hold on 
for i = 1 : length(data)
    if data(i,1)> 0
        bar(data(i,2),data(i,1),0.5,'b') % 正数用蓝色
    else
        bar(data(i,2),data(i,1),0.5,'k') % 负数用黑色
    end
end

科研笔记第三期——一条文章带你玩转柱状图_第15张图片

五、柱状图/条形图添加数字


clc
x2=[1 2 3 4];

t1=[28 41 21 5];
t2=[29 42 22 4];
t3=[28 42 20 4];
t=[t1;t2;t3];
t=rot90(t,3)
figure
bar(x2,t)
for i = 1:length(x2)
    text(x2(i)-0.3,t1(i),num2str(t1(i),'%g%%'),...
    'HorizontalAlignment','center',...
    'VerticalAlignment','bottom')
    text(x2(i),t2(i),num2str(t2(i),'%g%%'),...
    'HorizontalAlignment','center',...
    'VerticalAlignment','bottom')
    text(x2(i)+0.3,t3(i),num2str(t3(i),'%g%%'),...
    'HorizontalAlignment','center',...
    'VerticalAlignment','bottom')
end
title(' 换乘次数比例分布')
xlabel('换乘次数')
ylabel('分布比例/%')
%legend('2014','2015','2016',3)
legend({'\fontname{Times New Roman}2014','\fontname{Times New Roman}2015','\fontname{Times New Roman}2016'},'FontSize',11);
axis([0 5 0.0 50]);
set(gca,'xticklabel',{'1','2','3','4'});

科研笔记第三期——一条文章带你玩转柱状图_第16张图片

六、参考内容

[1]MATLAB官方文档

[2]matlab绘制柱状图并显示数值_matlab柱状图上怎么标数据_发如雪Jay的博客-CSDN博客

[3]Matlab柱状图 不同颜色_matlab 柱状图颜色_毛发浓密的猿工的博客-CSDN博客


本文内容来源于网络,仅供参考学习,如内容、图片有任何版权问题,请联系处理,24小时内删除。

你可能感兴趣的:(笔记,matlab,科技)