岳阳网站建设哪里有,中国招采网招标公告,wordpress建站安全性,wordpress wp_get_post_tagsPython绘图入门#xff1a;使用Matplotlib绘制柱状图
柱状图是一种常见的数据可视化方式#xff0c;能够直观地展示不同类别之间的数据差异。在Python中#xff0c;Matplotlib是一个非常强大且灵活的绘图库#xff0c;它不仅能绘制简单的图表#xff0c;还能创建复杂的多…Python绘图入门使用Matplotlib绘制柱状图
柱状图是一种常见的数据可视化方式能够直观地展示不同类别之间的数据差异。在Python中Matplotlib是一个非常强大且灵活的绘图库它不仅能绘制简单的图表还能创建复杂的多层次图形。本篇博客将带你一步步了解如何使用Matplotlib绘制一个基本的柱状图并介绍一些常用的图表优化技巧。
1. 安装Matplotlib
在开始之前确保你已经安装了Matplotlib库。如果还没有安装可以使用以下命令进行安装
pip install matplotlib2. 绘制简单柱状图
这里我们有一组有关2024年高效毕业生就业去向的数据
去向2023届2024届单位就业57.6%55.5%慢就业暂无具体打算18.9%19.1%自由职业13.2%13.7%国内继续学习4.9%6.5% 数据来源智联招聘 首先我们来绘制一个最简单的柱状图将2024届高校毕业生去向数据进行可视化
import matplotlib.pyplot as plt
plt.rcParams[font.sans-serif] [SimHei]
# 数据
employments [单位就业, 慢就业暂无具体打算, 自由职业, 国内继续学习]
rates [55.5, 19.1, 13.7, 6.5]# 绘制柱状图
plt.bar(employments, rates)# 添加标题和标签
plt.title(2024届高校毕业生去向)
plt.xlabel(毕业去向)
plt.ylabel(比率%)# 显示图表
plt.show()在这段代码中plt.bar()用于创建柱状图plt.title()、plt.xlabel()和plt.ylabel()分别用于添加标题和坐标轴标签。最后plt.show()用于显示图表。
3. 自定义柱状图
为了让图表更加美观和信息丰富我们可以对柱状图进行自定义。例如可以改变柱子的颜色、添加网格、显示数值标签等。
# 自定义颜色和网格
plt.bar(categories, sales, colorskyblue)
plt.grid(axisy, linestyle--, alpha0.7)# 显示数值标签
for i, value in enumerate(sales):plt.text(i, value 0.5, str(value), hacenter)plt.show()在这个例子中我们将柱子颜色设为浅蓝色并在y轴方向添加虚线网格。同时使用plt.text()函数在每个柱子上方显示具体数值。
这里需要注意的是添加无指向型注释文本有两种text()和figtext()方法。
text(x, y, s, fontdictNone, withdash, **kwargs) x, y:表示注释文本的位置。s:表示注释文本的内容。horizontalalignment或ha表示水平对齐的方式可以取值为’center’、right’或 ‘left’。verticalalignment或va表示垂直对齐的方式可以取值为’center’、‘top’、‘bottom’、‘baseline’或’center_baseline’ figtext(x, y, s, *args, **kwargs) x, y Float 放置文本的位置。默认情况下它在图形坐标[01]中s String 文字字串 两种方法的不同之处在于text()以图形的横纵坐标进行取值figtext()使用完整的图形作为坐标其中左下角表示(00)右上角表示(11)。图的中心是(0.50.5)。
4. 横向柱状图
如果数据类别较多或者类别名称较长横向柱状图可能会更适合。
# 绘制柱状图
plt.barh(employments, rates, colorlightcoral)plt.grid(axisy, linestyle--, alpha0.7)# 添加标题和标签
plt.title(2024届高校毕业生去向)
plt.xlabel(比率(%))
plt.ylabel()使用plt.barh()可以轻松创建横向柱状图其他设置与竖向柱状图类似。
5. 多系列柱状图
如果你有多个系列的数据需要同时展示可以使用多系列柱状图来对比不同系列之间的关系。例如我们可以对比2023届和2024届的高校毕业生去向
import numpy as np
import matplotlib.pyplot as plt
plt.rcParams[font.sans-serif] [SimHei]# 数据
employments [单位就业, 慢就业暂无具体打算, 自由职业, 国内继续学习]
rates_2024 [55.5, 19.1, 13.7, 6.5]
rates_2023 [55.5, 19.1, 13.7, 6.5]# 设置柱子的位置
x np.arange(len(employments))
width 0.35 # 柱子的宽度# 绘制多系列柱状图
plt.bar(x - width/2, rates_2024, width, label2024届)
plt.bar(x width/2, rates_2023, width, label2023届)# 添加标题和标签
plt.title(2024和2023届高校毕业生去向对比)
plt.xlabel(就业去向)
plt.ylabel(比率(%))
plt.xticks(x, employments) # 将x轴标签设置为就业去向
plt.legend() # 显示图例plt.show()在这个例子中np.arange()用于生成x轴的位置数组width设置了柱子的宽度。我们使用了两个plt.bar()来绘制不同系列的柱子并通过调整它们的x位置来使其并排显示。
这里没有显示数值标签请你学习完本博客后补充代码实现该功能。
6. 结语
通过这篇博客你已经学习了如何使用Matplotlib创建和自定义柱状图。无论是简单的单系列柱状图还是复杂的多系列柱状图Matplotlib都能轻松实现。掌握这些基础后你可以进一步探索Matplotlib的更多功能例如叠加柱状图、柱状图与折线图组合等。请关注“pythons数据可视化专栏”带你入门python绘图。
希望这篇文章对你有所帮助欢迎在评论区分享你的问题和经验
往期推荐 1.使用 Matplotlib 绘制折线图 2.Python 绘图入门