matplot工作层次

  • 底层基于Qt wxWiget GTK等

  • 封装一层Path 提供功能:

    • 折线 3阶贝塞尔 4阶贝塞尔
  • 封装一层Patch 提供功能:

    • 有色线段
    • 填充矩形
    • 填充多边形
    • 文字
  • 封装一层Plot 提供功能:

    • 数学表达式
    • axis坐标轴
    • tick刻度
    • legend图例
    • annotation标注
    • title标题
    • grid网格

使用Path绘制贝塞尔曲线:


import matplotlib.pyplot as plt
from matplotlib.path import Path
import matplotlib.patches as patches

verts = [
    (0., 0.),  # P0
    (0.2, 1.), # P1
    (1., 0.8), # P2
    (0.8, 0.), # P3
    ]

codes = [Path.MOVETO,
         Path.CURVE4,
         Path.CURVE4,
         Path.CURVE4,
         ]

path = Path(verts, codes)

fig = plt.figure()
ax = fig.add_subplot(111)
#将Path封装成Patch提供颜色和粗细信息
patch = patches.PathPatch(path, facecolor='none', lw=2)
ax.add_patch(patch)

xs, ys = zip(*verts)
ax.plot(xs, ys, 'x--', lw=2, color='black', ms=10)

ax.set_xlim(-0.1, 1.1)
ax.set_ylim(-0.1, 1.1)
plt.show()

http://matplotlib.org/users/path_tutorial.html

03-15
### 使用 Matplotlib 进行数据绘图 Matplotlib 是 Python 中广泛使用的数据可视化工具之一,能够帮助用户创建高质量的图表。以下是关于如何使用 Matplotlib 进行数据可视化的详细介绍。 #### 导入库 为了开始使用 Matplotlib,需要先导入其核心模块 `pyplot`,通常会将其命名为 `plt`[^2]: ```python import matplotlib.pyplot as plt ``` #### 数据准备 在绘制任何图形之前,必须准备好所需的数据。这可以通过多种方式实现,比如手动定义列表或利用 NumPy 生成数值数组。例如,以下代码展示了如何生成一组用于绘制正弦波的数据[^3]: ```python import numpy as np x = np.linspace(0, 10, 100) # 创建从 0 到 10 的均匀分布点 y = np.sin(x) # 计算对应的正弦值 ``` #### 图表绘制 完成数据准备工作后,可以调用 `plt.plot()` 方法来绘制折线图。此方法接受横坐标和纵坐标的参数,并支持自定义样式选项,如线条颜色、标记形状等[^5]: ```python plt.plot(x, y, label='Sine Wave', linestyle='-', marker='o') ``` #### 自定义图表属性 为了让图表更具可读性和吸引力,还可以设置标题、轴标签以及显示图例等内容[^4]: ```python plt.title("Sine Wave Example") # 设置图表标题 plt.xlabel("X-Axis Label") # 定义 X 轴名称 plt.ylabel("Y-Axis Label") # 定义 Y 轴名称 plt.legend() # 显示图例说明 ``` #### 展示与保存图表 最后一步是决定是否直接展示图表还是将其导出为文件形式存储下来。如果只是想查看效果,则可通过 `plt.show()` 实现;而当需要进一步处理或者分享给他人时,可以选择将图片另存为特定格式(如 PNG 或 PDF)[^4]: ```python # 显示图表窗口 plt.show() # 或者保存到本地磁盘上 plt.savefig("output_chart.png", dpi=300) ``` 以上就是基于 Matplotlib 库完成一次完整的数据分析并呈现结果的主要流程概述。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值