【发布时间】:2017-12-16 21:30:25
【问题描述】:
如果运行以下代码
import matplotlib.pyplot as plt
import numpy as np
a=np.random.random((1000,1000))
plt.imshow(a, cmap='Reds', interpolation='nearest')
plt.savefig('fig.png',bbox_inches='tight')
我得到了下面的图片,所有单元格代表每个随机数。
但是,当添加轴时如下代码所示:
import matplotlib.pyplot as plt
import numpy as np
a=np.random.random((1000,1000))
plt.imshow(a, cmap='Reds', interpolation='nearest')
plt.xlim(0, 10)
plt.xticks(list(range(0, 10)))
plt.ylim(0, 10)
plt.yticks(list(range(0, 10)))
plt.savefig('fig3.png',bbox_inches='tight')
我得到了分辨率较低的图片:
那么如何在不影响分辨率的情况下添加轴刻度?如果这与轴标记的字体大小有关,如何自动调整它们以保持原来的分辨率?
【问题讨论】:
-
谢谢,但是如何将 100 标记为 1、200 标记为 2、....、1000 标记为 10?
-
我在做一个例子。实际上,原始数据是皮秒,我想将其标记为纳秒。我想手动添加一些单词到刻度线,例如将“1,2,3”更改为“Atom 1,Atom 2,Atom 3”。
标签: python matplotlib resolution