matplotlib---5.Path

1.matplotlib.patch基本用法

matplotlib.patch对象底层的对象就是Path。它的基本用法如下:

 

 

2.matplotlib.path.Path(verts,codes)

PATH对象的创建通过matplotlib.path.Path(verts,codes)创建

参数:

  1. vertsPATH的顶点。这些顶点必须构成一个封闭曲线。其中每个顶点必须指定x坐标和y坐标。

  2. codes指示如何使用这些PATH顶点。它与verts关系是一一对应的。有如下指令:

    1. Path.STOP结束path的标记
    2. Path.MOVETO画笔提起并移动到指定的顶点
    3. Path.LINETO画笔画直线,从current position到指定的顶点
    4. Path.CURVE3:画笔画二阶贝塞尔曲线,从current position到指定的end point, 其中还有一个参数是指定的control point
    5. Path.CURVE4画笔画三阶贝塞尔曲线,从current position到指定的end point, 其中还有两个参数是指定的control points
    6. Path.CLOSEPOLY指定的point参数被忽略。该指令画一条线段, 从current pointstart point

可以通过matplotlib.patches.PathPatch(path)来构建一个PathPatch对象,然后通过Axes.add_patch(patch)Axes添加PathPatch对象.这样就添加了Path到图表中。

举例:

 

3.在matplotlib中所有简单的patch primitive,如RectangleCirclePolygon等等,都是由简单的Path来实现的。而创建大量的primitive的函数如hist()bar()(他们创建了大量的Rectanle)可以使用一个compound path来高效地实现。

但是实际上bar()创建的是一系列的Rectangle,而没有用到compound path,这是由于历史原因,是历史遗留问题。(bar()函数先于Coupound Path出现)

下面是一个Compound Path的例子:

在创建Axes或者SubPlot时,可以给构造函数提供一个axisbg参数来指定背景色

posted @   nxf_rabbit75  阅读(614)  评论(0编辑  收藏  举报
编辑推荐:
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 使用C#创建一个MCP客户端
· ollama系列1:轻松3步本地部署deepseek,普通电脑可用
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 按钮权限的设计及实现
1.matplotlib.patch基本用法2.matplotlib.path.Path(verts,codes)
点击右上角即可分享
微信分享提示