周学会Matplotlib3 Python 数据可视化-绘制折线图(Lines)

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

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

课程介绍

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

绘制折线图(Lines)

折线图是数据可视化中最常用的图表类型之一,特别适合展示数据随时间或有序类别的变化趋势。

plt.plot() 是 Matplotlib 中最核心的函数之一,用于创建二维线图(折线图)。它功能强大且灵活,支持多种数据格式和样式定制。以下是全面解析:

复制代码
plt.plot(*args, scalex=True, scaley=True, data=None, **kwargs)

核心参数:

参数 说明
x x轴数据(可省略,默认为[0, 1, ..., len(y)-1])
y y轴数据(必需)
fmt 格式字符串,控制线条样式(颜色、标记、线型)
**kwargs 其他样式参数(覆盖fmt设置)

格式字符串(fmt)详解

格式字符串由三部分组成:[颜色][标记][线型],例如 'ro--' 表示红色圆圈标记的虚线

1. 颜色字符

字符 颜色
'b' 蓝色
'g' 绿色
'r' 红色
'c' 青色
'm' 品红
'y' 黄色
'k' 黑色
'w' 白色

2. 标记字符

字符 标记
'.'
'o' 圆圈
's' 正方形
'D' 菱形
'^' 上三角形
'v' 下三角形
'*' 星号
'+' 加号
'x' 叉号

3. 线型字符

字符 线型
'-' 实线(默认)
'--' 虚线
'-.' 点划线
':' 点线
'None' 无线条

**常用关键字参数(`**kwargs`)**

参数 说明 示例
color / c 线条颜色 color='skyblue', c='#FF5733'
linestyle / ls 线型 linestyle='dotted'
linewidth / lw 线宽 linewidth=2.5
marker 标记样式 marker='D'
markersize / ms 标记大小 markersize=8
markerfacecolor / mfc 标记填充色 markerfacecolor='red'
markeredgecolor / mec 标记边缘色 markeredgecolor='black'
alpha 透明度 alpha=0.7
label 图例标签 label='Temperature'

我们看一个简单示例:

复制代码
import matplotlib.pyplot as plt
import numpy as np
​
# 创建数据
x = np.linspace(0, 10, 100)  # 0到10之间的100个点
y = np.sin(x)
​
# 创建图形
plt.figure(figsize=(10, 6))
​
# 绘制折线图
plt.plot(x, y,
         label='sin(x)',  # 图例标签
         color='royalblue',  # 线条颜色
         linewidth=2,  # 线条宽度
         linestyle='-',  # 线条样式(实线)
         alpha=0.8)  # 透明度
​
# 添加标题和标签
plt.title('基本正弦波', fontsize=14)
plt.xlabel('X-轴', fontsize=12)
plt.ylabel('Y-轴', fontsize=12)
plt.grid(True, linestyle='--', alpha=0.7)  # 添加网格
plt.legend()  # 显示图例
​
plt.tight_layout()
plt.show()

我们在看一个画多条折线图示例:

复制代码
import matplotlib.pyplot as plt
import numpy as np
​
# 创建数据
x = np.linspace(0, 10, 100)  # 0到10之间的100个点
y = np.sin(x)
​
plt.figure(figsize=(10, 6))
​
# 创建多条曲线
plt.plot(x, np.sin(x), label='sin(x)', color='#1f77b4', linewidth=2)
plt.plot(x, np.cos(x), label='cos(x)', color='#ff7f0e', linewidth=2)
plt.plot(x, np.sin(x) * np.cos(x), label='sin(x)cos(x)', color='#2ca02c',
         linestyle='--', linewidth=2)
​
# 添加标题和标签
plt.title('三角函数比较', fontsize=14)
plt.xlabel('角度(弧度)', fontsize=12)
plt.ylabel('函数值', fontsize=12)
​
# 添加网格和图例
plt.grid(True, linestyle=':', alpha=0.6)
plt.legend(loc='upper right', fontsize=10)
​
# 设置坐标轴范围
plt.xlim(0, 10)
plt.ylim(-1.2, 1.2)
​
plt.tight_layout()
plt.show()

运行显示:

相关推荐
A__tao4 小时前
Elasticsearch Mapping 一键生成 Java 实体类(支持嵌套 + 自动过滤注释)
java·python·elasticsearch
研究点啥好呢4 小时前
Github热门项目推荐 | 创建你的像素风格!
c++·python·node.js·github·开源软件
lly2024064 小时前
C 标准库 - `<stdio.h>`
开发语言
沫璃染墨4 小时前
C++ string 从入门到精通:构造、迭代器、容量接口全解析
c语言·开发语言·c++
jwn9994 小时前
Laravel6.x核心特性全解析
开发语言·php·laravel
迷藏4944 小时前
**发散创新:基于Rust实现的开源合规权限管理框架设计与实践**在现代软件架构中,**权限控制(RBAC)** 已成为保障
java·开发语言·python·rust·开源
功德+n5 小时前
Linux下安装与配置Docker完整详细步骤
linux·运维·服务器·开发语言·docker·centos
明日清晨5 小时前
python扫码登录dy
开发语言·python
我是唐青枫5 小时前
C#.NET gRPC 深入解析:Proto 定义、流式调用与服务间通信取舍
开发语言·c#·.net
JJay.5 小时前
Kotlin 高阶函数学习指南
android·开发语言·kotlin