Python matplotlib绘制散点图的实例代码

七月
七月
发布时间:2026-10-14| 6人浏览过
原创

本文详细介绍Python中matplotlib库绘制散点图的方法。重点解析scatter函数的常用参数,如颜色映射cmap、点大小s及标记类型marker。通过随机生成正态分布数据的实例代码,演示如何绘制并美化散点图,帮助开发者理解数据可视化在机器学习和数据分析中的应用。

前言

此前内容主要涉及matplotlib对图像的基础操作。从本文开始,重点转向点图的绘制。在实际问题的数据处理中,点图的应用极为广泛。例如,逻辑回归通过拟合现有数据点来建立函数关系;生活中的物体运动轨迹可视为由连续点构成;图像则由大量像素点堆砌而成,在图像处理中常需针对单个像素点进行操作。

当前的深度学习或机器学习模型大多固定,无需大幅改动。提升训练效果的关键在于更优的数据处理。许多数据本质上是点集,利用matplotlib将点绘制为可视化图像,有助于人工智能工程师的分析与理解。相比枯燥的数据,可视化的效果显然更利于直观把握。

在Python中绘制散点图主要使用matplotlib模块中的scatter函数。首先查看该函数的基本信息。

从函数定义中可以看到,scatter包含众多参数,其中经常使用的参数主要有以下几个:

散点图

以下是一个散点图的简单演示。利用numpy的random函数生成随机数,并将这些点绘制出来。如图所示,根据API设置窗口的参数,这里简要说明cmap='jet_r'这一项。jet_r是一种颜色映射算法,系统会根据图像中的信息自动配置颜色。用户也可以自行设置颜色,或使用其他颜色映射方式。

绘制散点图相关API:


mp.scatter(
	xarray, yarray,  # 给出点的坐标
    marker='',		 # 点型
    s = 60,			 # 点的大小
    edgecolor='',	 # 边缘色
    facecolor='',	 # 填充色
    zorder=3,		 # 绘制图层编号 
    c=d,			 # 设置过渡性颜色
    cmap='jet'		 # 颜色映射
)

随机生成符合正态分布的随机数:


n = 500
# 随机生成n个数
# 172: 数学期望
# 20:  标准差
x = np.random.normal(172, 20, n)

import numpy as np
import matplotlib.pyplot as mp

n = 500
# 随机生成500个样本身高
x = np.random.normal(172, 10, n)
# 随机生成500个样本体重
y = np.random.normal(65, 10, n)

mp.figure('Persons', facecolor='lightgray')
mp.title('Person Points', fontsize=16)
mp.xlabel('Height', fontsize=12)
mp.ylabel('Weight', fontsize=12)
mp.tick_params(labelsize=10)
mp.grid(linestyle=':')

d = (x-172)**2 + (y-65)**2
mp.scatter(x, y, c=d, cmap='jet_r',
	alpha=0.6, label='Person', s=50)
mp.legend()
mp.show()

总结

到此这篇关于Python matplotlib绘制散点图的文章就介绍到这了,更多相关Python matplotlib绘制散点图内容请搜索本站以前的文章或继续浏览下面的相关文章,希望大家以后多多支持本站!

免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。

Python 相关产品和应用

全部下载
Selenium

Selenium

4.51.0 · Windows

用于浏览器自动化和 Web 测试的 Python 工具。

scikit-learn

scikit-learn

1.9.1 · Windows

常用 Python 机器学习算法与模型评估工具库。

Black

Black

26.10.1 · Windows

强调一致性的 Python 自动代码格式化工具。

Ruff

Ruff

0.17.1 · macOS

由 Rust 编写的高速 Python 代码检查和格式化工具。

pytest

pytest

9.1.1 · Windows

简洁而强大的 Python 自动化测试框架。

FastAPI

FastAPI

0.146.0 · Windows

高性能 Python API 框架,支持类型提示和自动接口文档。

Flask

Flask

3.1.3 · Windows

轻量灵活的 Python Web 应用框架。

Django

Django

6.1.2 · Windows

成熟的 Python Web 框架,适合构建内容站点和业务系统。

Spyder

Spyder

6.1.7 · Windows

面向科学计算与数据分析的 Python 集成开发环境。

SciPy

SciPy

1.18.1 · Windows

面向科学、工程和技术计算的 Python 算法库。