标记每个十年的colorbar用于log imshow

时间:2011-05-10 10:04:07

标签: python logging matplotlib

我想在矩阵中绘制一些数据。 colors = z-values是对数的。我的问题是只有部分刻度标记。准确地说是“1e1,1e10,......”。如果这些值超出数据范围,则根本没有标签(但是刻度)。我希望每十年都有标签,即“1e1,1e2,1e3,......”以及“1e-1,1e-2,......”。 这是一个最小的例子:

from matplotlib import pylab
import numpy
from matplotlib.colors import LogNorm

data = numpy.loadtxt("data.txt")
pylab.imshow(data, interpolation="nearest", origin="upper", aspect="equal", norm=LogNorm())
cbar = pylab.colorbar()
pylab.show()

1 个答案:

答案 0 :(得分:-1)

查看set_ticks的{​​{1}}方法。这是documented here.