python - Pyplot中colorbar.solids的含义是什么?
问题描述
我正在使用 matplotlib/pyplot 创建等高线图,并尝试打印出自定义的颜色条。我还试图将颜色条打印在与绘图完全分开的图像文件中。
sub_fig = plt.figure()
sub_ax = plt.axes()
sub_ax.axis("off")
#cs2 is a contourf object
sep_cb = plt.colorbar(cs2, cax=sub_ax)#, cax = new_figure.legend, ax=new_figure.legend, orientation="vertical")
sep_cb.shrink=0.5
sep_cb.fraction=.1
sep_cb.drawedges=True
# ~sep_cb.solids.set_edgecolor("white")
plt.savefig("colorbar_"+str(ii)+".png")
plt.clf()
所以我指的是这里的文档:https ://matplotlib.org/api/_as_gen/matplotlib.pyplot.colorbar.html但我发现更改设置不会改变我的颜色条的外观。我想要的实际上是让它变得非常小,并用一些空格分隔各个部分,并将值/标签放在右侧。我不能缩小它,或者让值出现。不管怎样,它看起来像这样:
但是,如果我启用该 sep_cb.solids 线,我会在部分之间得到一些线。但我什至知道这一点的唯一原因是因为这一部分:
众所周知,某些矢量图形查看器(svg 和 pdf)会在颜色条段之间呈现白色间隙。这是由于查看器中的错误而不是 matplotlib。作为一种解决方法,可以使用重叠段渲染颜色栏:
cbar = colorbar()
cbar.solids.set_edgecolor("face")
draw()
似乎 colorbar.solids 可用于在绘图上设置一些选项,但我无法直接找到任何文档,我什至没有在页面的其他地方看到它。这是我设法忽略的一些基本的 pyplot 事情吗?任何帮助将不胜感激,谢谢。
解决方案
推荐阅读
- solr - 在 Solr Dashboard 中,当术语面板的高度由于添加图例而增加时,如何自动增加 tagcloud 面板的高度?
- javascript - 如何在 ASP.NET MVC 4 中检查脚本内的许多值?
- reactjs - React this.props.id 在部分类中未定义
- python - Python csv(两列:键/值)到字典
- typescript - 使用开始时间和持续时间值获取结束时间
- java - 是否有一种通用的方法来反序列化杰克逊中的单值值对象(没有自定义反序列化器)
- python - 使用 keras.preprocessing.tokenizer 或 nltk.tokenize 哪个更好
- javascript - 世博互动推送通知
- javascript - 将“必需”添加到选择框
- iis - mapbox 文件 pbf 阻止了 IIS 服务器