【发布时间】:2014-07-31 20:49:07
【问题描述】:
我想出了以下代码在 python+matplotlib 中生成一个图形:
fig = plt.figure(figsize=(10,8))
ax = fig.add_subplot(1,1,1, projection='3d')
ax.plot_surface(KX[kxl3d:kxr3d,kxl3d:kxr3d], KY[kxl3d:kxr3d,kxl3d:kxr3d],
BLP[kxl3d:kxr3d,kxl3d:kxr3d], rstride=8, cstride=8, alpha=0.4)
for idx in range(3):
ax.plot(kx[x_points]+momentum_spi[idx,0], ky[y_points]+momentum_spi[idx,1],
energy_spi[idx], linestyle='none', marker='o',
markerfacecolor=color_spi[idx], markersize=5)
ax.set_xlim(kl3d, kr3d)
ax.set_ylim(kl3d, kr3d)
ax.set_xlabel(r'$k_x[\mu m^{-1}]$')
ax.set_ylabel(r'$k_y[\mu m^{-1}]$')
ax.set_zlabel(r'$\epsilon-\omega_X[\gamma_p]$')
输出是:
我的问题是,我该怎么做
- 将 z 轴标签和刻度标签移动到图的左侧,这样它们就不会被圆环覆盖,并且
- 增加 x 和 y 刻度标签与轴标签之间的间距(注意它们有一点重叠,尤其是 y 轴)。
【问题讨论】:
-
我认为您只是设置了错误的 xlim 和 ylim。这就是为什么你得到不愉快的输出。您可以发布完整的示例吗? (在当前 sn-p KX 中是未定义的)。
标签: python matplotlib plot