当前位置:首页 > Python > 正文

Python Plot函数教程 - 掌握数据可视化的基础 | Python可视化指南

Python Plot函数完全指南

掌握Matplotlib中的plot()函数,轻松创建专业的数据可视化图表

什么是Plot函数?

在Python数据可视化领域,plot()函数是Matplotlib库中最基础和最重要的函数之一。它用于在二维平面上创建线图、散点图和其他多种类型的图表。

为什么使用Plot函数?

  • 简单易学,入门快速
  • 高度可定制化
  • 支持多种图表类型
  • 与NumPy和Pandas无缝集成
  • 广泛应用于科学计算和数据分析

基本语法

plt.plot(x, y, format_string, **kwargs)

其中:

  • x:X轴数据(可选)
  • y:Y轴数据
  • format_string:颜色、标记和线型
  • kwargs:其他可选参数

基础用法

简单线图

import matplotlib.pyplot as plt

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

# 创建图表
plt.figure(figsize=(8, 5))
plt.plot(x, y)  # 绘制线图

# 添加标题和标签
plt.title("简单线图示例", fontsize=14)
plt.xlabel("X轴", fontsize=12)
plt.ylabel("Y轴", fontsize=12)

# 显示网格
plt.grid(True, linestyle='--', alpha=0.7)

# 显示图表
plt.show()
简单线图示例
X轴
Y轴

高级用法与自定义

格式化字符串

plot()函数使用格式化字符串指定线条颜色、标记和线型:

# 红色实线
plt.plot(x, y, 'r-')

# 蓝色圆圈标记
plt.plot(x, y, 'bo')

# 绿色虚线带三角形标记
plt.plot(x, y, 'g--^')

颜色代码:r(红), g(绿), b(蓝), c(青), m(品红), y(黄), k(黑), w(白)

多个数据集

在同一图表中绘制多个数据集:

import numpy as np

x = np.linspace(0, 10, 100)
y1 = np.sin(x)
y2 = np.cos(x)
y3 = np.sin(x)*0.5

plt.figure(figsize=(10, 6))
plt.plot(x, y1, 'r-', label='sin(x)')
plt.plot(x, y2, 'b--', label='cos(x)')
plt.plot(x, y3, 'g:', linewidth=3, label='0.5*sin(x)')

plt.title('三角函数比较')
plt.xlabel('x')
plt.ylabel('y')
plt.legend()
plt.grid(True)
plt.show()

实际应用示例

股票价格可视化

import pandas as pd
import matplotlib.pyplot as plt

# 创建示例数据
dates = pd.date_range('2023-01-01', periods=30)
prices = np.random.normal(loc=100, scale=5, size=30).cumsum()

plt.figure(figsize=(12, 6))
plt.plot(dates, prices, 'b-o', linewidth=1.5, markersize=6)

# 自定义格式
plt.title('2023年股票价格走势', fontsize=16)
plt.xlabel('日期', fontsize=12)
plt.ylabel('价格 (USD)', fontsize=12)
plt.grid(True, linestyle=':', alpha=0.7)
plt.xticks(rotation=45)

# 添加注释
plt.annotate('最高点', 
             xy=(dates[np.argmax(prices)], max(prices)),
             xytext=(15, -30), 
             textcoords='offset points',
             arrowprops=dict(arrowstyle='->'))

plt.tight_layout()
plt.show()

科学数据可视化

import numpy as np
import matplotlib.pyplot as plt

# 创建数据
x = np.linspace(-5, 5, 200)
y = np.sinc(x)  # sinc函数

plt.figure(figsize=(10, 6))

# 绘制主曲线
plt.plot(x, y, 'b-', linewidth=2.5, label='sinc(x)')

# 添加数学公式
plt.text(0.5, 0.9, r'$sinc(x) = \frac{\sin(\pi x)}{\pi x}$', 
         fontsize=16, transform=plt.gca().transAxes)

# 添加垂直线和填充
plt.axhline(y=0, color='k', linestyle='-', alpha=0.3)
plt.axvline(x=0, color='k', linestyle='-', alpha=0.3)
plt.fill_between(x, y, 0, where=(y > 0), color='blue', alpha=0.1)
plt.fill_between(x, y, 0, where=(y < 0), color='red', alpha=0.1)

# 添加标题和图例
plt.title('Sinc函数可视化', fontsize=16)
plt.xlabel('x', fontsize=12)
plt.ylabel('sinc(x)', fontsize=12)
plt.legend(fontsize=12)

plt.grid(True, linestyle='--', alpha=0.6)
plt.show()

总结

核心要点

  • plot()是Matplotlib中最基础的绘图函数
  • 通过格式化字符串可快速定义线条样式
  • 支持多种自定义选项:颜色、线宽、标记等
  • 可与NumPy和Pandas无缝协作
  • 添加标签、标题和图例使图表更专业

下一步学习

  • 学习使用subplots创建多个子图
  • 探索其他图表类型:柱状图、饼图、直方图
  • 学习Seaborn库简化统计图表创建
  • 掌握3D数据可视化技术
  • 学习创建交互式图表

通过掌握plot函数,你已经打开了Python数据可视化的大门!

© 2023 Python可视化教程 | 掌握数据可视化的艺术

发表评论