3

我在 matplotlib 中遇到 3D 绘图的问题(错误?),我想知道是否有人可以提供帮助?

从 matplotlib 库示例图(例如来自: https ://matplotlib.org/examples/mplot3d/surface3d_demo.html )可以看出,当用户手动设置轴限制并在限制处放置一个刻度时,轴边界扩展了一点: 在此处输入图像描述

我希望轴显示 1.01 刻度标签,但这应该是立方体的顶点(上面没有灰色空间/黑色轴线)。请问这可能吗?

作为一个单独的、更次要的请求,我想在网格边缘周围画一条黑色实线以使其突出。然而,这没有固定界限那么重要。

作为参考,这里是制作上述情节的代码:

from mpl_toolkits.mplot3d import Axes3D
import matplotlib.pyplot as plt
from matplotlib import cm
from matplotlib.ticker import LinearLocator, FormatStrFormatter
import numpy as np


fig = 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, cmap=cm.coolwarm, linewidth=0, antialiased=False)

# Customize the z axis.
ax.set_zlim(-1.01, 1.01)
ax.zaxis.set_major_locator(LinearLocator(10))
ax.zaxis.set_major_formatter(FormatStrFormatter('%.02f'))

# Add a color bar which maps values to colors.
fig.colorbar(surf, shrink=0.5, aspect=5)

plt.show()
4

0 回答 0