MATLAB柱状图用 bar 表示各类别数值的高低,适合得分、销量这类分组数据。连续变化更常画折线,分类对比则多用柱状图。
柱状图:bar
scores = [78 92 85 63 88];
bar(scores)五个数就是五根柱。再加上轴标签和标题,图就完整了:
groups = {'第一组','第二组','第三组','第四组','第五组'};
bar(scores)
set(gca, 'XTickLabel', groups)
ylabel('得分')
title('小组竞赛得分')set(gca, 'XTickLabel', groups) 把横轴刻度文字换成小组名,这是 bar 图里常用的做法。
水平柱状图:barh
组名太长、横着放不下时,可以改成水平柱状图 barh:
barh(scores)多组数据对比:bar 加矩阵
% 两行 = 两次测验,五列 = 五个小组
data = [78 92 85 63 88; 82 75 91 70 94];
bar(data)
legend('第一次', '第二次')每一列会出现两组并排的柱,legend 对应矩阵的行。
饼图:pie
要看各部分占整体的比例,用饼图:
parts = [30 25 20 15 10];
pie(parts)
legend({'A','B','C','D','E'})类别少、比例差得明显时饼图比较清楚。类别一多就挤在一起,不如改回柱状图。
直方图:histogram
要看一堆数值怎么分布,用直方图。例如生成 1000 个随机数,看它们落在哪些区间:
data = randn(1, 1000); % 标准正态分布随机数
histogram(data, 30) % 分成 30 个区间直方图按数值大小分箱,柱高是落在该区间的个数,可以看出数据集中在哪一带。