Jba*_*ell 5 python matplotlib colorbar imshow
我有一个对数的imshow图,当创建颜色条时,它的轴标签和刻度是对数的,但由于值的短距离(0-50),颜色条看起来像这样:

而我希望它显示为沿轴线间隔0(5,10,20,50)(对数间距).
我似乎无法让这个工作.
谢谢你的帮助.
使用LogFormatter该类并设置labelOnlyBase为False:
import matplotlib.pyplot as plt
import numpy as np
import matplotlib.colors
from matplotlib.ticker import LogFormatter
A = np.random.rand(50,50)*50
plt.imshow(A, norm=matplotlib.colors.LogNorm())
formatter = LogFormatter(10, labelOnlyBase=False)
cb = plt.colorbar(ticks=[1,5,10,20,50], format=formatter)
plt.show()
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4741 次 |
| 最近记录: |