为了账号安全,请及时绑定邮箱和手机立即绑定

压缩 3-D MatPlotLib 图中的垂直范围

压缩 3-D MatPlotLib 图中的垂直范围

慕田峪9158850 2022-08-02 16:20:11
我正在使用2-D矩阵,其中条目是高程的,并且正在尝试使用MatPlotLib mplot3d绘制它们。如何调整所得图形的垂直高度?举个例子,从mplot3d教程中的代码中提取:from mpl_toolkits.mplot3d import Axes3Dimport matplotlib.pyplot as pltimport numpy as npfig = plt.figure()ax = fig.gca(projection='3d')# Make data.X = np.arange(-5, 5, 0.25)Y = np.arange(-5, 5, 0.25)X, Y = np.meshgrid(X, Y)R = np.sqrt(X**2 + Y**2)Z = np.sin(R)# Plot the surface.surf = ax.plot_surface(X, Y, Z, linewidth=0, antialiased=False)# Configure z-axis.ax.set_zlim(-1.01, 1.01)plt.show()这给出了:我想垂直压缩图片,以便将z轴上的标记向下推到的当前位置。1.00-0.75更改 z 限制会使数据变平,但使图形保持相同的高度。我也尝试过这样的语句,但这会改变图形大小并干扰在3D中旋转生成的绘图。ax.set_zlim(-1.01, 10.01)plt.figure(figsize=(20,5))
查看完整描述

1 回答

?
侃侃无极

TA贡献2051条经验 获得超10个赞

- 这个答案可以解决问题。


添加:


scale_x = 1

scale_y = 1

scale_z = 0.25


ax.get_proj = lambda: np.dot(Axes3D.get_proj(ax), np.diag([scale_x, scale_y, scale_z, 1]))

给出以下绘图,在修改轴编号后,它将完全按照我想要的方式进行操作。

//img1.sycdn.imooc.com//62e8de770001afc505410332.jpg

查看完整回答
反对 回复 2022-08-02
  • 1 回答
  • 0 关注
  • 128 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信