0
点赞
收藏
分享

微信扫一扫

【数据分析之道-Matplotlib(五)】Matplotlib柱状图

晚熟的猫 2023-05-29 阅读 93

在这里插入图片描述

文章目录

专栏导读

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()

在这里插入图片描述


举报

相关推荐

0 条评论