Matplotlib中surf(x,y,z,c)的等效方法是什么?

Matplotlib中surf(x,y,z,c)的等效方法是什么?

让我们通过一个例子来看如何在Matplotlib中获得与MatLab’s surf(x,y,z,c)相同的效果。以下是步骤:

  • 设置图形大小并调整子图之间和周围的填充。

  • 创建一个新图或激活现有图。

  • 在图形中添加一个”ax”,作为子图布局的一部分。

  • 使用Numpy创建r,u,v,x,y和z数据点。

  • 创建一个表面绘图。

  • 使用”show()”方法来显示图形。

import matplotlib.pyplot as plt
import numpy as np

plt.rcParams["figure.figsize"] = [7.50, 3.50]
plt.rcParams["figure.autolayout"] = True

fig = plt.figure()
ax = fig.add_subplot(projection='3d')
r = 0.05
u, v = np.mgrid[0:2 * np.pi:30j, 0:np.pi:20j]

x = np.cos(u) * np.sin(v)
y = np.sin(u) * np.sin(v)
z = np.cos(v)

ax.plot_surface(x, y, z, cmap=plt.cm.YlGnBu_r)

plt.show()

输出

Matplotlib中surf(x,y,z,c)的等效方法是什么?

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程