📜  使用 Pandas 和 Matplotlib 创建棒棒糖图表(1)

📅  最后修改于: 2023-12-03 14:49:44.498000             🧑  作者: Mango

使用 Pandas 和 Matplotlib 创建棒棒糖图表

介绍

棒棒糖图表(lollipop chart)是一种有效的数据可视化方式,特别适用于排名和比较数据。

Pandas 是一个开源数据分析库,提供了丰富的数据操作和分析功能,包括数据导入、清洗、筛选、统计等。Matplotlib 是常用的 Python 可视化库,提供了各种图表类型和配置选项,可以灵活地定制图表样式和内容。

在本篇文章中,我们将介绍如何使用 Pandas 和 Matplotlib 创建棒棒糖图表。

准备工作

在开始之前,确保你已经安装了 Pandas 和 Matplotlib。你可以使用以下命令进行安装:

pip install pandas matplotlib
数据准备

我们以汽车销售数据为例,假设有 5 家汽车经销商的销售额数据如下:

import pandas as pd

# 创建数据帧
df = pd.DataFrame({
    '经销商': ['A', 'B', 'C', 'D', 'E'],
    '销售额': [200, 350, 280, 400, 320]
})

print(df)

输出:

  经销商  销售额
0   A  200
1   B  350
2   C  280
3   D  400
4   E  320
创建棒棒糖图表

接下来,我们将使用 Matplotlib 创建棒棒糖图表。

首先,我们需要创建一个基础图表:

import matplotlib.pyplot as plt

plt.hlines(y=df['经销商'], xmin=0, xmax=df['销售额'], color='gray', alpha=0.4)

解释:

  • plt.hlines 创建水平线图表,其中 y 指定 y 轴数据,xmin 指定 x 轴起始位置,xmax 指定 x 轴结束位置,coloralpha 指定线段颜色和透明度。

接下来,我们在基础图表上添加圆点:

plt.scatter(df['销售额'], df['经销商'], color='navy', alpha=1)

解释:

  • plt.scatter 创建散点图表,其中 xy 指定 x 和 y 轴数据,coloralpha 指定圆点颜色和透明度。

最后,我们可以添加标签和标题:

plt.xlabel('销售额')
plt.ylabel('经销商')
plt.title('汽车经销商销售额排名')
plt.show()

解释:

  • plt.xlabelplt.ylabel 添加 x 轴和 y 轴标签,plt.title 添加图表标题,plt.show 显示图表。

完整代码:

import pandas as pd
import matplotlib.pyplot as plt

# 创建数据帧
df = pd.DataFrame({
    '经销商': ['A', 'B', 'C', 'D', 'E'],
    '销售额': [200, 350, 280, 400, 320]
})

# 创建基础图表
plt.hlines(y=df['经销商'], xmin=0, xmax=df['销售额'], color='gray', alpha=0.4)

# 添加圆点
plt.scatter(df['销售额'], df['经销商'], color='navy', alpha=1)

# 添加标签和标题
plt.xlabel('销售额')
plt.ylabel('经销商')
plt.title('汽车经销商销售额排名')

# 显示图表
plt.show()

输出:

棒棒糖图表

总结

Pandas 和 Matplotlib 是创建数据可视化的强大工具组合,可以轻松地处理和显示数据。使用 Matplotlib 创建棒棒糖图表,可以帮助我们更好地理解和展示数据。