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()
代码解析
- 导入库:首先,我们导入Matplotlib库。
- 准备数据:我们定义了城市名、人口、面积和GDP等数据。
- 设置气泡大小:通过将GDP除以100,得到气泡的大小,以便于观察。
- 绘制气泡图:使用
plt.scatter()
函数绘制气泡图。 - 添加标题和标签:使用
plt.title()
和plt.xlabel()
、plt.ylabel()
函数添加图形的标题和坐标轴标签。 - 显示图形:调用
plt.show()
展示图形。
数据关联图
为了更好地理解气泡图的构成,我们可以使用ER图来展示城市与其属性之间的关系。下面是一个简单的关系图,展示了城市与人口、面积、GDP之间的关联:
erDiagram
CITIES {
string city_name PK
int population
int area
int gdp
}
在这个ER图中,CITIES是主要的实体,每个城市都有其名称、人口、面积和GDP属性。这种结构可以帮助我们理解数据的组织方式。
结尾
气泡图是一种便捷而直观的数据可视化手段,能够将多个维度的数据生动地展现在你的面前。通过Python的Matplotlib库,你可以非常简单地创建气泡图,来分析和比较不同城市之间的人口和GDP等信息。希望本文的介绍和代码示例能帮助你更好地利用气泡图这种工具进行数据分析。接下来,可以尝试将其他数据集应用于气泡图的制作,从而获得更深入的洞见!