python绘制气泡图|随机生成数据

python绘图系列文章目录

往期python绘图合集:
python绘制简单的折线图
python读取excel中数据并绘制多子图多组图在一张画布上
python绘制带误差棒的柱状图
python绘制多子图并单独显示
python读取excel数据并绘制多y轴图像
python绘制柱状图并美化|不同颜色填充柱子
python随机生成数据并用双y轴绘制两条带误差棒的折线图
Python绘制带误差棒的柱状图渐变色填充含数据标注(进阶)
python绘制散点图|散点大小和颜色深浅由数值决定
Matplotlib绘制漂亮的饼状图|python绘制漂亮的饼状图
python读取excel数据并用双y轴绘制柱状图和折线图,柱子用渐变颜色填充
python批量修改图片格式|python批量给图片增加水印|python批量给图片大小


一、实现目标

  1. 首先生成了 100 个元素的随机数据 x、y 和 z,其中 x 表示横坐标,y 表示纵坐标,z 表示气泡大小和颜色所对应的值。
  2. 使用scatter() 函数绘制气泡图。在这里设置了气泡大小为 z 值的 10 倍,颜色由 z 值确定,并使用 coolwarm 颜色映射。
  3. 在 plt.subplots() 函数中设置了 figsize 和 dpi 参数,分别用于设置图形的大小和分辨率。
  4. 通过修改 rcParams 属性,设置了坐标轴字体为 Times New Roman,字号为 20。 接着添加了颜色条,用于说明气泡颜色与 z值的对应关系。在这里也设置了颜色条标签的字号为 20。
  5. 最后添加了标题和坐标轴标签,并设置了它们的字号。最后使用 show() 函数显示图形。

二、完整代码

import numpy as np
import matplotlib.pyplot as plt
import matplotlib as mpl

# 生成随机数据
n = 100
x = np.random.rand(n) * 150
y = np.random.rand(n) * 120
z = np.random.rand(n) * 90

# 绘制气泡图
fig, ax = plt.subplots(figsize=(10,6),dpi=300)
scatter = ax.scatter(x, y, s=z*10, c=z, cmap="coolwarm")

# 设置坐标轴字体
mpl.rcParams['font.family'] = 'Times New Roman'
mpl.rcParams['font.size'] = 20

# 添加颜色条
cbar = plt.colorbar(scatter)
cbar.ax.tick_params(labelsize=20)

# 添加标题和坐标轴标签
plt.xlabel('Width/cm', fontsize=22)
plt.ylabel('Hight/cm', fontsize=22)

# 显示图形
plt.show()

三、运行结果

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/m0_58857684/article/details/130833462