如何在使用 Matplotlib 3D 绘图时隐藏坐标轴但保留坐标轴标签
如果想使用 Matplotlib 在 3D 绘图中隐藏坐标轴但保留坐标轴标签,可以采取以下步骤:
- 设置图像大小并调整子图之间的间距。
- 创建一个新图像或激活一个现有的图像。
- 添加一个'~.axes.Axes' 到子图布局。`
- 使用 numpy 创建 x、y、z、dx、dy 和 dz 数据点
- 使用 bar3d() 方法绘制 3D 条形图。
- 若要隐藏坐标轴,可初始化一个与坐标轴颜色相同的颜色元组。
- 设置 x、y 和 z 坐标轴平面颜色属性,与颜色元组相同。
- 设置 x、y 和 z 坐标轴线颜色属性,与颜色元组相同。
- 设置 x、y 和 z 坐标轴为空刻度。
- 设置 x、y 和 z 坐标轴标签。
- 若要显示图像,请使用 show() 方法。
示例
import numpy as np from matplotlib import pyplot as plt plt.rcParams["figure.figsize"] = [7.50, 3.50] plt.rcParams["figure.autolayout"] = True fig = plt.figure() ax = fig.add_subplot(111, projection='3d') x = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] y = [5, 6, 7, 8, 2, 5, 6, 3, 7, 2] z = np.zeros(10) dx = np.ones(10) dy = np.ones(10) dz = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] ax.bar3d(x, y, z, dx, dy, dz, color="green") color_tuple = (1.0, 1.0, 1.0, 0.0) ax.w_xaxis.set_pane_color(color_tuple) ax.w_yaxis.set_pane_color(color_tuple) ax.w_zaxis.set_pane_color(color_tuple) ax.w_xaxis.line.set_color(color_tuple) ax.w_yaxis.line.set_color(color_tuple) ax.w_zaxis.line.set_color(color_tuple) ax.set_xticks([]) ax.set_yticks([]) ax.set_zticks([]) ax.set_xlabel('X-Axis') ax.set_ylabel('Y-Axis') ax.set_zlabel('Z-Axis') plt.show()
输出
广告