Python制作气泡图

气泡图是一种可视化工具,用于展示三个维度的数据。通过气泡的坐标(x和y)和气泡的大小(z),你可以直观地观察数据之间的关系和趋势。气泡图在科学研究、市场分析、财务报告等领域都有广泛的应用。本文将介绍如何使用Python绘制气泡图,并给出相应的代码示例。

数据准备

在绘制气泡图之前,我们需要准备好数据。假设我们有一个关于不同城市的信息,包括城市名、人口、面积和GDP(国内生产总值)。下面我们将这个信息以表格的形式展示:

城市 人口 (万) 面积 (平方公里) GDP (亿元)
北京 2140 16410 35300
上海 2424 6340 38700
广州 1490 7434 25000
深圳 1300 1991 30000
成都 1633 14312 16600

在这个表格中,城市对应x轴,人口对应y轴,GDP则用气泡的大小来表示。

安装所需库

为了绘制气泡图,我们需要使用Python的绘图库——Matplotlib。可以使用以下命令安装该库:

pip install matplotlib

绘制气泡图的代码示例

下面是一个简单的代码示例,展示如何根据以上数据绘制气泡图。

import matplotlib.pyplot as plt

# 数据准备
cities = ['北京', '上海', '广州', '深圳', '成都']
population = [2140, 2424, 1490, 1300, 1633]  # 人口(单位:万)
area = [16410, 6340, 7434, 1991, 14312]  # 面积(单位:平方公里)
gdp = [35300, 38700, 25000, 30000, 16600]  # GDP(单位:亿元)

# 设置气泡大小
bubble_size = [g / 100 for g in gdp]  # 每个城市的气泡大小,缩小比例

# 绘制气泡图
plt.figure(figsize=(10, 6))
plt.scatter(cities, population, s=bubble_size, alpha=0.5)

# 添加标题和标签
plt.title('中国主要城市气泡图')
plt.xlabel('城市')
plt.ylabel('人口(万)')

# 显示图形
plt.show()

代码解析

  1. 导入库:首先,我们导入Matplotlib库。
  2. 准备数据:我们定义了城市名、人口、面积和GDP等数据。
  3. 设置气泡大小:通过将GDP除以100,得到气泡的大小,以便于观察。
  4. 绘制气泡图:使用plt.scatter()函数绘制气泡图。
  5. 添加标题和标签:使用plt.title()plt.xlabel()plt.ylabel()函数添加图形的标题和坐标轴标签。
  6. 显示图形:调用plt.show()展示图形。

数据关联图

为了更好地理解气泡图的构成,我们可以使用ER图来展示城市与其属性之间的关系。下面是一个简单的关系图,展示了城市与人口、面积、GDP之间的关联:

erDiagram
    CITIES {
        string city_name PK
        int population
        int area
        int gdp
    }

在这个ER图中,CITIES是主要的实体,每个城市都有其名称、人口、面积和GDP属性。这种结构可以帮助我们理解数据的组织方式。

结尾

气泡图是一种便捷而直观的数据可视化手段,能够将多个维度的数据生动地展现在你的面前。通过Python的Matplotlib库,你可以非常简单地创建气泡图,来分析和比较不同城市之间的人口和GDP等信息。希望本文的介绍和代码示例能帮助你更好地利用气泡图这种工具进行数据分析。接下来,可以尝试将其他数据集应用于气泡图的制作,从而获得更深入的洞见!