Matplotlib库学习之scatter(模块)

Matplotlib库学习之scatter(模块)

一、简介

Matplotlib 是 Python 中一个强大的绘图库,其中 matplotlib.pyplot.scatter 用于创建散点图。散点图在数据可视化中广泛用于展示两个变量之间的关系。

二、语法和参数

语法
python 复制代码
matplotlib.pyplot.scatter(x, y, s=None, c=None, marker=None, cmap=None, norm=None, vmin=None, vmax=None, alpha=None, linewidths=None, edgecolors=None, plotnonfinite=False, data=None, **kwargs)
参数
  • x, y: 必选参数,代表散点图中每个点的 x 坐标和 y 坐标。
  • s: 可选,标量或数组,用于控制每个点的大小。
  • c: 可选,标量或数组,用于控制每个点的颜色。
  • marker : 可选,表示散点的形状,默认为 'o'
  • cmap : 可选,Colormap 对象或字符串,用于将标量数据映射到颜色。
  • norm : 可选,Normalize 对象,用于缩放颜色数据。
  • vmin, vmax: 可选,控制亮度标量数据的最小值和最大值。
  • alpha: 可选,标量,用于设置透明度。
  • linewidths: 可选,标量或数组,表示每个点的边缘宽度。
  • edgecolors: 可选,表示点的边缘颜色。
  • plotnonfinite : 可选,布尔值,如果为 True,会绘制非有限点(NaNInf)。
  • data: 可选,传递数据的对象。
  • kwargs : 其他传递给 matplotlib.axes.Axes.scatter 的参数。
返回值

返回一个 PathCollection 对象,表示绘制的散点图。

三、实例

3.1 绘制简单的散点图
python 复制代码
import matplotlib.pyplot as plt

# 数据
x = [1, 2, 3, 4, 5]
y = [2, 3, 4, 5, 6]

# 绘制散点图
plt.scatter(x, y)
plt.title("Simple Scatter Plot")
plt.xlabel("X Axis")
plt.ylabel("Y Axis")
plt.show()

输出:

复制代码
显示一个简单的散点图,其中X轴表示1到5的值,Y轴表示2到6的值,每个点为一个圆形标记。
3.2 设置不同大小和颜色的点
python 复制代码
import matplotlib.pyplot as plt

# 数据
x = [1, 2, 3, 4, 5]
y = [2, 3, 4, 5, 6]
sizes = [20, 50, 80, 200, 500]
colors = [10, 20, 30, 40, 50]

# 绘制散点图
plt.scatter(x, y, s=sizes, c=colors, cmap='viridis', alpha=0.6)
plt.title("Scatter Plot with Varying Sizes and Colors")
plt.xlabel("X Axis")
plt.ylabel("Y Axis")
plt.colorbar()  # 添加颜色条
plt.show()

输出:

复制代码
显示一个散点图,其中每个点的大小和颜色各不相同,点的颜色根据'viridis'颜色映射来进行区分。
3.3 使用自定义标记形状和边缘颜色
python 复制代码
import matplotlib.pyplot as plt

# 数据
x = [1, 2, 3, 4, 5]
y = [2, 3, 4, 5, 6]
sizes = [100] * 5
colors = [0, 1, 2, 3, 4]

# 绘制散点图
plt.scatter(x, y, s=sizes, c=colors, marker='^', edgecolors='r', linewidths=2, cmap='plasma')
plt.title("Scatter Plot with Custom Marker and Edge Color")
plt.xlabel("X Axis")
plt.ylabel("Y Axis")
plt.colorbar()  # 添加颜色条
plt.show()

输出:

复制代码
显示一个散点图,其中每个点的标记形状为三角形,并且有红色边缘,每个点的颜色根据'plasma'颜色映射来区分。

四、注意事项

  • 当使用 c 参数进行颜色映射时,如果 c 是标量数组,则需要指定 cmap 来定义颜色映射的范围。
  • alpha 参数可以用于调整点的透明度,值越低,点越透明。
  • edgecolors'none' 时,点将没有边缘颜色。
相关推荐
小白说大模型1 小时前
AI驱动的个性化学习路径:知识图谱与知识点关联的存储与推理
大数据·人工智能·学习·mysql·机器学习·prompt·知识图谱
Groundwork Explorer1 小时前
W5500 网卡编程初始化与使用指南
python·单片机
吃好睡好便好1 小时前
三伏天结束了
学习·生活·毕淑敏·心理游戏
逸Y 仙X2 小时前
MCP(模型控制协议)完全指南:从核心概念到实战开发
python·大模型·llm·ai编程·mcp
2501_931819702 小时前
方言标注标准化模板迭代优化诉求 泸州话标注公司学习信实翻译模板迭代方法论
学习
WILLF2 小时前
前端视角:Python requests vs JS axios
前端·python
哒哒哒5285202 小时前
69. Python: 核心语法-面向对象基础-案例(教务系统)
python
何以解忧,唯有..3 小时前
Python 中获取目录操作完全指南
windows·python·microsoft
南京云森杉木桩3 小时前
常见打桩木品牌推荐,选对材质让工程更稳固
人工智能·python·材质
tju新生代魔迷3 小时前
Python学习日记5
学习