文章目录
专栏导读
1、matplotlib柱状图基本语法
柱状图(Bar Plot)是一种常用的数据可视化方式,用于显示各个类别之间的比较。在Matplotlib中,可以使用bar()函数或barh()函数来绘制柱状图。
1.1bar()函数绘制垂直柱状图基本语法
使用bar()函数绘制垂直柱状图的基本语法如下:
plt.bar(x, height, width=0.8, align='center', color=None, edgecolor='black')
参数说明:
- x:表示每个柱的横坐标,可以是一个标量或一个数组。
- height:表示每个柱的高度,可以是一个标量或一个数组。
- width:表示每个柱的宽度,默认值为0.8。
- align:表示柱与横坐标的对齐方式,可选值为 ‘center’、‘edge’,默认值为 ‘center’。
- color:表示柱的填充颜色,可以是一个颜色名称(如 ‘red’、‘blue’)或一个颜色列表。
- edgecolor:表示柱的边框颜色,默认值为 ‘black’。
1.2barh()函数绘制垂直柱状图基本语法
使用barh()函数绘制水平柱状图的基本语法如下:
plt.barh(y, width, height=0.8, align='center', color=None, edgecolor='black')
参数说明:
- y:表示每个柱的纵坐标,可以是一个标量或一个数组。
- width:表示每个柱的宽度,可以是一个标量或一个数组。
- height:表示每个柱的高度,默认值为0.8。
- align:表示柱与纵坐标的对齐方式,可选值为 ‘center’、‘edge’,默认值为 ‘center’。
- color:表示柱的填充颜色,可以是一个颜色名称(如 ‘red’、‘blue’)或一个颜色列表。
- edgecolor:表示柱的边框颜色,默认值为 ‘black’。
除了上述的基本参数外,bar()和barh()函数还支持其他参数,如设置标签、调整刻度、添加图例等,以进一步自定义柱状图的样式和布局。
通过设置合适的数据和调整参数,你可以创建出具有各种样式和效果的柱状图,用于展示类别之间的比较、分布等信息。
2、使用 bar() 来创建一个简单的柱形图
import matplotlib.pyplot as plt
# 数据
categories = ['A', 'B', 'C', 'D']
values = [15, 20, 12, 18]
# 绘制柱状图
plt.bar(categories, values)
# 设置标题和坐标轴标签
plt.title('Bar Chart')
plt.xlabel('Categories')
plt.ylabel('Values')
# 显示图形
plt.show()
3、垂直方向的柱形图可以使用 barh() 方法来设置
import matplotlib.pyplot as plt
# 数据
categories = ['A', 'B', 'C', 'D']
values = [15, 20, 12, 18]
# 创建垂直柱形图
plt.barh(categories, values)
# 设置标题和坐标轴标签
plt.title('Vertical Bar Chart')
plt.xlabel('Values')
plt.ylabel('Categories')
# 显示图形
plt.show()
4、设置柱形图颜色
可以使用color参数来设置柱形图的颜色。color参数可以接受单个颜色值或颜色列表,用于指定柱形图的颜色。
4.1使用单个颜色值
import matplotlib.pyplot as plt
categories = ['A', 'B', 'C', 'D']
values = [15, 20, 12, 18]
plt.bar(categories, values, color='blue')
plt.title('Bar Chart')
plt.xlabel('Categories')
plt.ylabel('Values')
plt.show()
4.2使用颜色列表
import matplotlib.pyplot as plt
categories = ['A', 'B', 'C', 'D']
values = [15, 20, 12, 18]
colors = ['red', 'green', 'blue', 'yellow']
plt.bar(categories, values, color=colors)
plt.title('Bar Chart')
plt.xlabel('Categories')
plt.ylabel('Values')
plt.show()
5、设置柱形图宽度
可以使用width参数来设置垂直柱形图的宽度,使用height参数来设置水平柱形图的高度。这两个参数可以用于调整柱形的宽度或高度。
5.1使用width参数设置垂直柱形图的宽度
import matplotlib.pyplot as plt
categories = ['A', 'B', 'C', 'D']
values = [15, 20, 12, 18]
plt.bar(categories, values, width=0.5)
plt.title('Vertical Bar Chart')
plt.xlabel('Categories')
plt.ylabel('Values')
plt.show()
5.2使用height参数设置水平柱形图的高度
import matplotlib.pyplot as plt
categories = ['A', 'B', 'C', 'D']
values = [15, 20, 12, 18]
plt.barh(categories, values, height=0.5)
plt.title('Horizontal Bar Chart')
plt.xlabel('Values')
plt.ylabel('Categories')
plt.show()
6、综合案例
import matplotlib.pyplot as plt
fig, ax = plt.subplots()
fruits = ['apple', 'blueberry', 'cherry', 'orange']
counts = [40, 100, 30, 55]
bar_labels = ['red', 'blue', '_red', 'orange']
bar_colors = ['tab:red', 'tab:blue', 'tab:red', 'tab:orange']
ax.bar(fruits, counts, label=bar_labels, color=bar_colors)
ax.set_ylabel('fruit supply')
ax.set_title('Fruit supply by kind and color')
ax.legend(title='Fruit color')
plt.show()