一周学会Matplotlib3 Python 数据可视化-绘制散点图(Scatter)

锋哥原创的Matplotlib3 Python数据可视化视频教程:

2026版 Matplotlib3 Python 数据可视化 视频教程(无废话版) 玩命更新中~_哔哩哔哩_bilibili

课程介绍

本课程讲解利用python进行数据可视化 科研绘图-Matplotlib,学习Matplotlib图形参数基本设置,绘图参数及主要函数,以及Matplotlib基础绘图,和Matplotlib高级绘图。

绘制散点图(Scatter)

散点图用于展示两个变量之间的关系,每个点的位置由两个变量的值决定,常用于观察数据分布、聚类或相关性分析。

基础语法:

复制代码
plt.scatter(
    x, y,           # 必需:数据点的x/y坐标(数组)
    s=None,         # 点的大小(标量或数组)
    c=None,         # 点的颜色(颜色名、RGB、数组)
    marker=None,    # 点标记样式(字符串或路径)
    alpha=None,     # 透明度(0-1)
    edgecolors=None,# 边缘颜色
    linewidths=None,# 边缘线宽
    cmap=None,      # 颜色映射(当c为数值数组时)
    vmin=None,      # 颜色映射最小值
    vmax=None,      # 颜色映射最大值
    **kwargs        # 其他Line2D属性
)

核心参数详解

  1. 数据坐标
  • x, y : 长度相同的数组,定义数据点在坐标系中的位置。 示例:x = [1, 2, 3], y = [4, 5, 6]
  1. 点大小 (s)
  • 标量 :所有点统一大小(单位: 的平方,如 s=100)。

  • 数组 :每个点独立大小(需与 x,y 长度相同),常用于气泡图。 示例:s = [10, 100, 200]

  1. 点颜色 (c)
  • 单一颜色 :字符串(如 'r')、RGB元组(如 (0.2, 0.5, 0.8))。

  • 颜色数组 :为每个点指定颜色(长度同 x,y),支持:

    • 颜色名列表:c=['red','blue','green']

    • 数值数组 :通过 cmap 映射为颜色(如热力图)。

  1. 点标记 (marker)

常用标记符号:

符号 描述 符号 描述
'.' 小圆点 'o' 大圆点
'v' 下三角形 '^' 上三角形
's' 正方形 'D' 菱形
'*' 五角星 '+' 加号
'x' 叉号 'p' 五边形
  1. 透明度 (alpha)
  • 范围 [0, 1]0 完全透明,1 完全不透明。
  1. 边缘控制
  • edgecolors : 边缘颜色(默认 'face' 与填充色相同)。

  • linewidths : 边缘线宽(默认 1.0)。

  1. 颜色映射 (cmap, vmin, vmax)

c 为数值数组时:

  • cmap : 指定颜色映射(如 'viridis', 'jet', 'coolwarm')。

  • vmin/vmax: 控制映射的数据范围(不指定则用数组最小/最大值)。

基础散点图示例:

复制代码
import matplotlib
import matplotlib.pyplot as plt
import numpy as np
​
# 设置matplotlib使用黑体显示中文
matplotlib.rcParams['font.family'] = 'Microsoft YaHei'
​
# 生成随机数据
np.random.seed(42)
x = np.random.rand(50)  # 50个随机X值
y = np.random.rand(50)  # 50个随机Y值
​
# 创建画布
plt.figure(figsize=(8, 6))
​
# 绘制散点图(基础版)
plt.scatter(x, y,
            color='blue',  # 点颜色
            marker='o',  # 点形状(圆形)
            alpha=0.7,  # 透明度
            edgecolors='black')  # 边缘颜色
​
# 添加标题和标签
plt.title("基本散点图", fontsize=14)
plt.xlabel("X-轴", fontsize=12)
plt.ylabel("Y-轴", fontsize=12)
​
# 显示网格
plt.grid(True, linestyle='--', alpha=0.5)
​
plt.show()
相关推荐
rannn_1119 分钟前
【学以致用|python自动化办公】OCR批量识别自动存为Excel(批量识别发票)
python·ocr·excel·财务
小龙报17 分钟前
《算法通关指南---C++编程篇(2)》
c语言·开发语言·数据结构·c++·程序人生·算法·学习方法
古一|33 分钟前
Vue3中ref与reactive实战指南:使用场景与代码示例
开发语言·javascript·ecmascript
AI视觉网奇39 分钟前
pycharm 默认终端设置 cmd
ide·python·pycharm
言之。43 分钟前
LiteLLM:让LLM调用变得简单统一
后端·python·flask
宠友信息1 小时前
java微服务驱动的社区平台:友猫社区的功能模块与实现逻辑
java·开发语言·微服务
驰羽1 小时前
[GO]golang接口入门:从一个简单示例看懂接口的多态与实现
开发语言·后端·golang
ZhengEnCi1 小时前
Python_try-except-finally 完全指南-从异常处理到程序稳定的 Python 编程利器
后端·python
jarreyer1 小时前
常见分析方法与对应图表汇总
python·信息可视化·数据分析
ii_best1 小时前
IOS/ 安卓开发工具按键精灵Sys.GetAppList 函数使用指南:轻松获取设备已安装 APP 列表
android·开发语言·ios·编辑器