matplotlib 如何为3D网格线上色

qcuzuvrc  于 2023-05-01  发布在  其他
关注(0)|答案(1)|浏览(131)

我正在寻找一种方法来改变颜色的三维地块网格线,并无法找到一个干净和简单的方法来这样做。我找到的唯一答案是here,它有点复杂。我想知道是否有一种更简单的方法来在matplotlib中使用mpl_toolkits.mplot3d为3D图的网格线着色
简单的例子在这里找到

import matplotlib as mpl
from mpl_toolkits.mplot3d import Axes3D
import numpy as np
import matplotlib.pyplot as plt

mpl.rcParams['legend.fontsize'] = 10

fig = plt.figure()
ax = fig.gca(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)
ax.plot(x, y, z, label='parametric curve')
ax.legend()

plt.show()
zd287kbt

zd287kbt1#

来自question you found的代码非常复杂,因为它对网格的单行进行了着色。
如果目标是同时为所有网格线着色,则可以使用

plt.rcParams['grid.color'] = "deeppink"

相关问题