【Matplotlib画图】使用Python Matplotlib画三维的子图

文章目录

  • 1. 代码
  • 2. 画图效果
  • 写在最后


1. 代码

在matlab转过来,之前一直不知道python的写法,以为是像matlab一样返回一个句柄然后在上面添加元素;
其实是应该先创建一个画布,然后再在上面添加子图,然后再使用返回的句柄进行修改

这里主要展示了matplotlib画两个三维子图,一个线图,一个点图的画法,如果要画多个,就直接使用fig.add_subplot往里面添加就行了

# 导入matplotlib.pyplot和numpy库
import matplotlib.pyplot as plt
import numpy as np

# 导入mpl_toolkits.mplot3d模块,用于绘制三维图形
from mpl_toolkits.mplot3d import Axes3D

# 创建一个figure对象,指定图形的大小
fig = plt.figure(figsize=(10, 5))

# 在figure对象中创建两个子图,指定projection为'3d'
ax1 = fig.add_subplot(121, projection='3d')
ax2 = fig.add_subplot(122, projection='3d')

# 在第一个子图中绘制三维曲线
# 生成曲线的数据
theta = np.linspace(-4 * np.pi, 4 * np.pi, 100)
z = np.linspace(-2, 2, 100)
r = z**2 + 1
x = r * np.sin(theta)
y = r * np.cos(theta)

# 使用plot方法绘制曲线,设置颜色为红色
ax1.plot(x, y, z, color='r')

# 设置x、y和z轴的标签
ax1.set_xlabel('X')
ax1.set_ylabel('Y')
ax1.set_zlabel('Z')

# 在第二个子图中绘制三维散点图
# 生成散点的数据
x = np.random.randn(100)
y = np.random.randn(100)
z = np.random.randn(100)

# 使用scatter方法绘制散点,设置颜色为蓝色
ax2.scatter(x, y, z, color='b')

# 设置x、y和z轴的标签
ax2.set_xlabel('X')
ax2.set_ylabel('Y')
ax2.set_zlabel('Z')

# 显示图形
plt.show()

2. 画图效果

【Matplotlib画图】使用Python Matplotlib画三维的子图_第1张图片


写在最后

各位看官,都看到这里了,麻烦动动手指头给博主来个点赞8,您的支持作者最大的创作动力哟!
才疏学浅,若有纰漏,恳请斧正
本文章仅用于各位作为学习交流之用,不作任何商业用途,若涉及版权问题请速与作者联系,望悉知

你可能感兴趣的:(matplotlib,python,开发语言)