gpt4 book ai didi

python - matplotlib 颜色条上的对数缩放小刻度线?

转载 作者:太空狗 更新时间:2023-10-30 00:07:03 28 4
gpt4 key购买 nike

我在设置带有颜色条的 pcolormesh 图时遇到了一些问题,该颜色条在颜色条上包含对数间隔的小刻度线。

我最接近的是这样的:

import matplotlib
import matplotlib.pyplot as plt
import numpy as np

xbins = np.linspace(0, 1, 50)
ybins = np.linspace(0, 1, 50)

data = np.random.random((49,49))

fig, ax = plt.subplots()

im = ax.pcolormesh(xbins, ybins, data, norm=matplotlib.colors.LogNorm())

cb = fig.colorbar(im)

cb.ax.minorticks_on()

plt.savefig('test.png')

此解决方案的问题在于次要刻度在对数空间中均匀分布:

enter image description here

我想设置绘图,以便在线性空间中均匀分布小刻度,在该绘图上应该显示为不均匀间距。

我知道我可以使用 FixedFormatter 手动设置次要刻度标签,但如果可能的话我不想这样做,因为我会自动制作大量绘图。

最佳答案

我认为自定义颜色条刻度的最佳方法是使用 fig.colorbar 方法的“ticks”参数,而不是尝试修改包含颜色条的斧头的属性。

from matplotlib.ticker import LogLocator
"..."
cb = fig.colorbar(im, ticks = LogLocator(subs=range(10)))

enter image description here

关于python - matplotlib 颜色条上的对数缩放小刻度线?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25454532/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com