Python-matplotlib中的pie(饼)图
%matplotlib inline
import matplotlib.pyplot as plt
m = 51212
f = 40742
m_perc = m/(m+f)
f_perc = f/(m+f)
colors = ['navy','lightcoral']
labels = ["Male","Female"]
plt.figure(figsize=(8,8))
paches,texts,autotexts = plt.pie([m_perc, f_perc], labels = labels,
autopct = '%1.1f%%', explode = [0,0.05], colors = colors)
for text in texts+autotexts:
text.set_fontsize(20)
for text in autotexts:
text.set_color('white')
这段代码用于绘制一个饼图,展示一个数据集中男性和女性的比例。
%matplotlib inline
:这是一个Jupyter Notebook的魔术命令,用于在Notebook中显示matplotlib绘制的图形。m = 51212
和f = 40742
:定义两个整数变量m
和f
,分别表示男性和女性的数量。m_perc = m/(m+f)
和f_perc = f/(m+f)
:计算男性和女性在数据集中所占的比例,分别赋值给变量m_perc
和f_perc
。colors = ['navy','lightcoral']
:定义一个包含两种颜色的列表,分别表示男性和女性的颜色。labels = ["Male","Female"]
:定义一个包含两个字符串的列表,用于表示男性和女性的标签。plt.figure(figsize=(8,8))
:创建一个名为figure
的图形对象,大小为8英寸×8英寸。paches,texts,autotexts = plt.pie([m_perc, f_perc], labels = labels, autopct = '%1.1f%%', explode = [0,0.05], colors = colors)
:使用plt.pie
函数绘制饼图。[m_perc, f_perc]
表示要绘制的数据,labels = labels
表示标签使用上面定义的labels
列表,autopct = '%1.1f%%'
表示要在每个扇形中显示百分比,且保留一位小数,explode = [0,0.05]
表示将第二个扇形从饼图中分离出来,colors = colors
表示使用上面定义的colors
列表中的颜色。for text in texts+autotexts: text.set_fontsize(20)
:设置标签字体大小为20。for text in autotexts: text.set_color('white')
:将百分比标签的颜色设置为白色。