首页/文章/ 详情

MATLAB与Python绘图区别2—条形图

1年前浏览675

上次推文中,描述了MATLAB与Python在绘制折线图上的区别。那么我们今天继续学习,在绘制条形图时,两者之间的区别。

案例:
假设我们想统计2016到2021年6年时间中,考研报考人数及录取人数的变化情况。为了学习条形图中单个柱和两个柱之间的区别,我们绘制两个图。第一个图显示报考人数随着年份的变化,第二个图显示报考人数和录取人数随着年份的变化。
在这个案例中,MATLAB与Python绘制条形图会有什么区别呢?

(1)Python


























import matplotlib.pyplot as pltplt.rcParams['font.sans-serif']=['SimHei']plt.rcParams['axes.unicode_minus']=Falseyear = [2016,2017,2018,2019,2020,2021]number_1 = [25,26,30,35,37,40]number_2 = [35,46,50,65,57,70]plt.subplot(121)x = range(len(year))plt.xticks(x,year)plt.bar(x,number_1,label='报考情况',color='red')plt.xlabel('报考年数')plt.ylabel('报考人数/万人')plt.title('研究生报考情况')plt.legend()plt.show()plt.subplot(122)x = range(len(year))plt.xticks(x,year)plt.bar(x,number_1,label='报考情况',color='red',width=0.4)plt.bar([i+0.4 for i in x],number_2,label='报考情况',color='blue',width=0.4)plt.xlabel('报考年数')plt.ylabel('报考人数/万人')plt.title('研究生报考情况')plt.legend()plt.show()

其绘制的条形图如下图所示:

关于在Python学习条形图的绘制,方法如下图所示:

(2)MATLAB



















clc;clear;year=[2016 2017 2018 2019 2020 2021]number_1=[25 26 30 35 37 40]number_2=[15 16 20 25 27 20]number_3=[25 26 30 35 37 40;15 16 20 25 27 20]subplot(1,2,1)bar(year,number_1,0.5,'r')xlabel('报考年数')ylabel('报考人数/万人')title('研究生报考情况')legend('报考人数')subplot(1,2,2)bar(year,number_3,0.5)xlabel('报考年数')ylabel('报考人数/万人')title('研究生报考情况')legend('报考人数','录取人数')

则其绘制的条形图如下图所示:

从以上结果来看,绘制条形图都是用bar函数。只是绘制双柱图时有些许不同。在Python中,是利用了for循环来实现,而在MATLAB中,是使用矩阵的方式实现。我们可以发现,Python虽然简单,但是基础还是c语言,所以学好c语言才是打基础的过程。
来源:土木爱研小站
MATLAB
著作权归作者所有,欢迎分享,未经许可,不得转载
首次发布时间:2023-08-16
最近编辑:1年前
语墨
硕士 不怕困难,勇往直前
获赞 70粉丝 75文章 133课程 0
点赞
收藏
未登录
还没有评论
课程
培训
服务
行家
VIP会员 学习 福利任务 兑换礼品
下载APP
联系我们
帮助与反馈