我的matplotlib颜色条有一个令人讨厌的问题。 我曾经使用自动定义的刻度绘制轮廓图的颜色条(如果我理解正确,则对应于自动报价器),我只需要分配轮廓图的“级别”参数,就可以令人满意地绘制色标。
例如:
levels = MaxNLocator(nbins=50).tick_values(-0.2,1)
levels = MaxNLocator(nbins=50).tick_values(-0,0.01)
但是最近这还不够,因为AutoLocator倾向于将刻度线靠近最大值而不是最大值(如下图所示)。在这里,我希望1成为标记的刻度线的一部分。
壁虱 The automatic definition of the ticks
由于我没有找到任何方法来迫使定位器创建同时包含我的最小值和最大值以及0的刻度线列表,因此我自己定义了刻度线。
例如:
levels2 = LinearLocator(numticks=7).tick_values(-0.2,1)
>print(levels2)
('levels2=',array([ -2.00000000e-01,-2.77555756e-17,2.00000000e-01,4.00000000e-01,6.00000000e-01,8.00000000e-01,1.00000000e+00]))
我的问题是matplotlib不会在颜色栏上绘制最低刻度的标签(下图第二个图)。 我在互联网上找不到令人满意的解决方案。
缺少下部标签 (left) colorbar with automatic ticks definition (right) colorbar after manually defining the ticks
预先感谢您的帮助。