Python matplotlib绘制统计图表指南

需积分: 2 53 下载量 87 浏览量 更新于2024-09-09 收藏 22KB DOCX 举报
"这篇文章主要介绍了如何使用Python的matplotlib库来绘制不同类型的图形,特别是折线图、条形图和饼图。数据以列表的形式存储,示例中给出了一个关于甘肃省2014-2016年各市(州)GDP构成的饼图实例。" 在Python编程中,matplotlib是一个非常流行的库,用于创建高质量的二维图表。它提供了丰富的接口,允许用户生成各种图形,包括但不限于折线图、散点图、柱状图、饼图等。在这个例子中,我们将关注饼图的绘制。 首先,我们需要导入必要的模块: ```python import matplotlib as mpl import numpy as np import matplotlib.pyplot as plt ``` `matplotlib.pyplot`通常简写为`plt`,它是matplotlib的主要接口,提供了许多方便的绘图函数。`numpy`用于处理数组数据,虽然在这个例子中没有直接使用,但在处理大量数值数据时非常有用。 接着,我们定义了一些数据,这些数据将用于创建饼图: ```python vals1, vals2, vals3, vals4 = [2264.23, ...], [2095.99, ...], [1913.5, ...], [1] ``` 这里,`vals1`, `vals2`, `vals3`, `vals4`分别代表了不同类别的数值,它们对应于甘肃省各市(州)的GDP。 为了使得饼图更加美观和易于阅读,我们还需要设置一些图表参数: ```python mpl.rcParams['font.sans-serif']=['SimHei'] mpl.rcParams['axes.unicode_minus']=False mpl.rcParams['font.size']=10 ``` 这些代码设置了字体和负号的显示方式,以及字体大小。 接下来,我们创建了一个饼图: ```python fig, ax = plt.subplots() fig.suptitle('2014-2016年甘肃省全省GDP市(州)构成', fontsize=15) ax.pie(vals1, radius=1.2, autopct='%1.1f%%', pctdistance=0.91, labels=labels, labeldistance=1.03, colors=colors) ``` 在这里,`plt.subplots()`创建了一个图形对象`fig`和一个轴对象`ax`。`ax.pie()`函数用于绘制饼图,`radius`定义了饼图的半径,`autopct`表示每个扇区的百分比标签,`pctdistance`和`labeldistance`控制了百分比标签和类别标签与饼图的距离,`labels`是每个扇区的标签,`colors`则是对应的色彩。 最后,我们添加了一个圆圈来增强视觉效果: ```python cir1 = Circle((0.0, 0.0), 0.95, facecolor='white') ax.add_artist(cir1) ``` 这个圆圈位于饼图的中心,半径稍小于饼图,起到了背景装饰的作用。 整个代码执行后,会生成一个展示甘肃省2014-2016年各市(州)GDP构成的饼图,每个扇区的大小代表了各市(州)的GDP比例,颜色和标签则帮助区分不同的市(州)。通过matplotlib库,我们可以轻松地定制图表样式,以满足不同的数据可视化需求。