我是matplotlib的新手,我想要更改x轴的值格式,如下所示:
轴x:250000,500000等。更改为格式0.250,0.500等。
在这一点上我能做些什么?
谢谢
答案 0 :(得分:1)
您通常只是在绘图之前缩放数据。因此,您使用plt.plot(x,y)
而不是plt.plot(x,y/1e6)
。
要格式化3位小数的值,请使用matplotlib.ticker.StrMethodFormatter
并提供3位小数的格式,在本例中为"{x:.3f}"
。
import matplotlib.pyplot as plt
import matplotlib.ticker
import numpy as np; np.random.seed(42)
x = np.arange(5)
y = np.array([5e5,2e5,0,3e5,4e5])
plt.plot(x,y/1e6)
plt.gca().yaxis.set_major_formatter(matplotlib.ticker.StrMethodFormatter("{x:.3f}"))
plt.show()