在使用python绘图设置坐标轴范围时如何保留3位小数?
比如
import matplotlib.pyplot as plt
plt.ylim(1.975,2.025)
使用 matplotlib.ticker
参考:
import matplotlib.pyplot as plt
import matplotlib.ticker as ticker
import numpy as np
x = np.linspace(0, 2*np.pi, 100)
y = np.sin(x)
fig, ax = plt.subplots()
ax.plot(x, y)
formatter = ticker.FormatStrFormatter('%.3f') # 保留3位小数
ax.xaxis.set_major_formatter(formatter) # 在x轴启用保留3位小数格式
ax.yaxis.set_major_formatter(formatter) # 在y轴启用
plt.xlim(0, 3.14);
plt.show()
各二维子图的值均为np.random.random产生的随机数。
import numpy as np
import matplotlib.pyplot as plt
import os
fig, axs = plt.subplots(nrows=2, ncols=2, figsize=(8, 8))
for i in range(2):
for j in range(2):
axs[i, j].scatter(np.random.random((100)), np.random.random((100)),c=np.random.randint(1,4,(100)),s=1)
axs[i, j].set_title(str(i*2+j))
plt.tight_layout()
plt.savefig( "D:\\"+str(i*2+j))
plt.show()