当我使用python的matplotlib绘制一个3d图时,我遇到了问题.使用以下python函数,我得到了这个数字:
在这里X,Y有孔栅格和Z和Z_的功能X和Y.C代表表面颜色.
import numpy as np
from mpl_toolkits.mplot3d import Axes3D
from matplotlib import cm
import matplotlib.pyplot as plt
def plot(X, Y, Z, Z_, C):
fig = plt.figure()
ax = fig.gca(projection='3d')
surf = ax.plot_surface(
X, Y, Z, rstride=1, cstride=1,
facecolors=cm.jet(C),
linewidth=0, antialiased=False, shade=False)
surf_ = ax.plot_surface(
X, Y, Z_, rstride=1, cstride=1,
facecolors=cm.jet(C),
linewidth=0, antialiased=False, shade=False)
ax.view_init(elev=7,azim=45)
plt.show()
Run Code Online (Sandbox Code Playgroud)
但现在我想水平切割这个数字,只剩下z在-1和2之间的部分.
用gnuplot绘制的我想要的是:
我曾尝试ax.set_zlim3d和ax.set_zlim,但他们都没有给我想要的数字.有人知道如何使用python做到这一点吗?