使用Matplotlib在饼图中绘制Pandas数据框

使用Matplotlib在饼图中绘制Pandas数据框

在数据分析和可视化中,Pandas是一个广泛使用的Python库,而Matplotlib则是常用的绘图工具。在这篇文章中,我们将学习如何使用 Matplotlib 在饼图中绘制 Pandas 数据框。

首先,让我们导入必要的库。

import matplotlib.pyplot as plt
import pandas as pd

我们首先创建一个简单的 Pandas 数据框,展示商品销售额。

data = {'商品':['商品1', '商品2', '商品3', '商品4', '商品5'],
        '销售额':[20000, 30000, 45000, 12000, 7000]}
df = pd.DataFrame(data)
df

输出:

商品 销售额
0 商品1 20000
1 商品2 30000
2 商品3 45000
3 商品4 12000
4 商品5 7000

接下来,我们将使用 Matplotlib 创建饼图。先绘制一个简单的饼图以显示各商品销售额占比。

plt.pie(df['销售额'], labels=df['商品'], autopct='%1.1f%%')
plt.show()

在这段代码中,我们首先使用 plt.pie() 方法创建一个饼图。第一个参数是销售额列表,第二个参数是商品名称列表。autopct 参数用于设置百分比格式,这里使用 '%1.1f%%' 表示保留一位小数的百分数。

这个饼图显示了每种商品销售额的占比。

下一步,我们将改进饼图的可视化效果。我们可以使用 explode 参数来突出某些商品,可以使用 colors 参数来设置颜色。

explode = (0, 0.1, 0.1, 0, 0)
colors = ['#ff9999','#66b3ff','#99ff99','#ffcc99', '#ff6666']
plt.pie(df['销售额'],
        colors=colors,
        labels=df['商品'],
        autopct='%1.1f%%',
        startangle=90,
        explode=explode,
       )
plt.title('商品销售额占比')
plt.axis('equal')
plt.show()

在这段代码中,explode 是一个包含数值的元组,每个元素都对应一个商品。这里突出显示了第二个和第三个商品。

同样地,colors 是一个颜色列表,每个元素对应一个商品。这里使用不同的颜色区分不同商品。

最后,我们添加了标题、设置了起始角度为90度、设置了 axis('equal') 来确保饼图是圆形的。

我们可以清楚地看到,一些商品比其他商品更畅销。

结论

在这篇文章中,我们学习了如何使用 Matplotlib 在饼图中绘制 Pandas 数据框。我们首先创建了一个 Pandas 数据框来展示商品销售额。然后,我们使用 Matplotlib 的 pie() 方法来创建饼图,使用 explode 参数突出某些商品,使用 colors 参数设置颜色。最后,我们改进了饼图的可视化效果,添加了标题、设置了起始角度为90度、设置了axis('equal') 来确保饼图是圆形的。

通过这篇文章,我们可以清晰地了解每种商品销售额的占比,并且可以更加直观地展示数据。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程