python 3d绘图库_Python画各种 3D 图形Matplotlib库

本文详细介绍了如何使用Python的Matplotlib库进行2D和3D图形绘制,包括赛贝尔曲线、3D帽子图、3D线性图和3D散点图的绘制方法,提供了一系列实例代码帮助理解。
摘要由CSDN通过智能技术生成

回顾 2D 作图

用赛贝尔曲线作 2d 图。此图是用基于 Matplotlib 的 Path 通过赛贝尔曲线实现的,有对赛贝尔曲线感兴趣的朋友们可以去学习学习,在 matplotlib 中,figure 为画布,axes 为绘图区,fig.add_subplot()、plt.subplot() 方法均可以创建子图。以下是作图实践。

import matplotlib.path as mpath

import matplotlib.patches as mpatches

import matplotlib.pyplot as plt

fig, ax = plt.subplots()

#定义绘图指令与控制点坐标

Path = mpath.Path

# Path 控制坐标点绘制贝塞尔曲线

# 图形数据构造

# MOVETO表示将绘制起点移动到指定坐标

# CURVE4表示使用4个控制点绘制3次贝塞尔曲线

# CURVE3表示使用3个控制点绘制2次贝塞尔曲线

# LINETO表示从当前位置绘制直线到指定位置

# CLOSEPOLY表示从当前位置绘制直线到指定位置,并闭合多边形

path_data = [

(Path.MOVETO, (1.88, -2.57)),

(Path.CURVE4, (0.35, -1.1)),

(Path.CURVE4, (-1.75, 1.5)),

(Path.CURVE4, (0.375, 2.0)),

(Path.LINETO, (0.85, 1.15)),

(Path.CURVE4, (2.2, 3.2)),

(Path.CURVE4, (3, 0.05)),

(Path.CURVE4, (2.0, -1.5)),

(Path.CLOSEPOLY, (1.58, -2.57)),

]

codes,verts = zip(*path_data)

path = mpath.Path(verts, codes)

patch = mpatches.PathPatch(path, facecolor='r', alpha=0.5)

ax.add_patch(patch)

# plot control points and connecting lines

x, y = zip(*path.vertices)

line, = ax.plot(x, y, 'go-')

ax.grid()

ax.axis('equal')

plt.show()

3D 帽子图1

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值