当前位置: 首页 > 知识库问答 >
问题:

在matplotlib colorbar中隐藏每N个勾号标签的最干净方法?

阎作人
2023-03-14

水平颜色栏上的标签靠得太近,我不想进一步减小文本大小:

cbar = plt.colorbar(shrink=0.8, orientation='horizontal', extend='both', pad=0.02)
cbar.ax.tick_params(labelsize=8)

我想保留所有的记号,但删除其他标签。

我找到的大多数示例都将用户指定的字符串列表传递给cbar.set_ticklabels()。我在寻找一个通用的解决方案。

我玩了很多不同的游戏

cbar.set_ticklabels(cbar.get_ticklabels()[::2])

cbar.ax.xaxis.set_major_locator(matplotlib.ticker.MaxNLocator(nbins=4))

但是我还没有找到神奇的组合。

我知道一定有一个干净的方法来使用定位器对象来实现这一点。

共有3个答案

司马作人
2023-03-14

刚刚碰到这条线索,不错的答案。我在寻找一种方法来隐藏第n个刻度之间的每一个刻度。并找到枚举函数。所以如果有人在寻找类似的东西,你可以这样做。

for index, label in enumerate(ax.xaxis.get_ticklabels()):
    if index % n != 0:
        label.set_visible(False)
齐朝明
2023-03-14

对那些喜欢的人来说是一句客套话!

n = 7  # Keeps every 7th label
[l.set_visible(False) for (i,l) in enumerate(ax.xaxis.get_ticklabels()) if i % n != 0]
孔欣荣
2023-03-14

对于循环标签,并调用set\u visible()

for label in cbar.ax.xaxis.get_ticklabels()[::2]:
    label.set_visible(False)
 类似资料:
  • 我想对绘图中的几个选定记号标签进行一些修改。 例如,如果我这样做: 刻度标签的字体大小和方向会改变。 但是,如果尝试: 刻度标签未被修改。另外,如果我这样做: 没有打印任何内容。 还有一些奇怪的地方。当我尝试这样做时: 仅打印空字符串,但绘图包含标记为“0.0”、“0.5”、“1.0”、“1.5”和“2.0”的记号。

  • 问题内容: 我对某些外部jar具有运行时依赖性,因此我希望将这些外部jar重新“打包”成单个jar。这些外部依赖项存储在external_jars目录中,我希望不必将它们全部列出(即,如果我的依赖项发生更改,则无需更改构建脚本)。有什么想法吗? 粗略地讲,我需要遵循以下内容,它将lib目录中的所有jar组合到out.jar中(带有一些合理的覆盖规则)。 问题答案: 只需与Ant Zip任务一起使用

  • 我正在构建一个API,在这里我有几个endpoint,我需要用户ID,所以在从这篇文章中投票最多的答案(而不是被接受的答案)中得到想法后:ASP。NET MVC将对象从自定义操作筛选器传递到操作。 我创建了一个动作过滤器,我可以用属性来设置它。 所以我基本上是通过这个操作过滤器获得用户ID,它通过这样的方式从授权头获得: 唯一的问题是,现在它在我的Swagger文档中将参数显示为必需的参数(我根本

  • 嗨,我正在试图隐藏标签,但消息是空的,但我似乎不知道如何隐藏,因为如果我想隐藏和空变量,我需要做的是使用“除非”或“如果”: 但是当我使用消息类型var时,它似乎不起作用,代码失败了 我得到的最接近的是这个,但它不会显示任何东西: 我一直在搜索thymeleaf文档和谷歌,但我似乎找不到一个有效的解决方案,谢谢。

  • 参考这个问题:表情符号在上传到大查询时崩溃 我正在寻找最好和干净的方法来将emoji从这个类型编码为这个(Unicode)-.因为目前,我除了创建python方法(该方法将通过文本文件并替换emojis编码)之外,没有任何想法。 这是可以转换的字符串: 在python 3中将表情符号转换为Unicode,反之亦然 作为一种假设,可能需要逐行传递文本并进行转换?? 潜在想法:

  • OK!所以,我有一个大图表,包含了双轴例子中的几个元素 现在我的问题是,Y轴标题的大小和字体已经修改,并且在主Y轴上显示正确。在第二个(有问题的“lulu”)中,我得到了一个自定义字体和大小。显然,两者不匹配,我需要更改secondary NumberAxis标题标签的字体和大小以与原始标签相对应。 除了用我自己的字体和大小对NumberAxis和plugin进行子类化之外,还有什么方法可以更改标