matplotlib 改变颜色条宽度

kxeu7u2r  于 2022-12-19  发布在  其他
关注(0)|答案(2)|浏览(246)

我已经创建了这个,正如你所看到的颜色条是非常薄的,有没有反正增加宽度的颜色条,而不增加高度

gt0wga4j

gt0wga4j1#

你需要抓住颜色条的轴。
假设您在cbar中保存了对颜色条的引用,则可以通过cbar.ax获得轴。
你可以用ax.set_aspect(number)来控制高度/宽度的比率,这将重新调整坐标轴以匹配这个比率,但是我并不完全理解重新调整的方式:
我可能会逐步增加/减少这个数值,轴会在一个维度上收缩/延伸,以匹配相应的比率,但在某个点上,行为会发生变化,进一步增加/减少会在另一个维度上产生延伸/收缩。
axes.set_aspect的文档说明:
一个圆将被拉伸这样这高度是num乘这宽度. aspect=1是相同的作为aspect ='equal'
如果你想完全避免这种麻烦,你可以设置ax.set_aspect('auto'),然后用显式设置轴的精确位置

ax.set_position((left, bottom, width, height))

单位是相对于图形画布的,从0拉伸到10,0是画布的左下角。
示例:set_position((0.1, 0.2, 0.4, 0.6))将轴左下边缘定位在(0.1, 0.2),右上边缘定位在(0.1 + 0.4, 0.2 + 0.6)

gudnpqoy

gudnpqoy2#

我能够使用fractionaspect参数的组合获得所需的颜色条宽度:https://matplotlib.org/stable/api/_as_gen/matplotlib.pyplot.colorbar.html

相关问题