如何消除3d图的垂直轴上的科学记数法,并用整数代替?例如,我希望代替0.0+2.002e3
2002
我的示例脚本如下:
import numpy as np
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import axes3d
yearvec = [2002, 2003, 2004]
plt.close('all')
fig = plt.figure()
ax = fig.gca(projection='3d')
ax.set_xlim3d(0, 250)
ax.set_ylim3d(0, 250)
ax.set_zlim3d(yearvec[0], yearvec[-1])
答案 0 :(得分:2)
尝试使用ax.zaxis.set_major_formatter
和ax.zaxis.set_major_locator
:
import numpy as np
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import axes3d
from matplotlib.ticker import FormatStrFormatter, MultipleLocator
yearvec = [2002, 2003, 2004, 2005]
plt.close('all')
fig = plt.figure()
ax = fig.gca(projection='3d')
ax.set_xlim3d(0, 250)
ax.set_ylim3d(0, 250)
ax.set_zlim3d(yearvec[0], yearvec[-1])
majorLocator = MultipleLocator(1)
ax.zaxis.set_major_locator(majorLocator)
zFormatter = FormatStrFormatter('%d')
ax.zaxis.set_major_formatter(zFormatter)