【问题标题】:Position text with background exactly in corner of matplotlib plot将带有背景的文本准确定位在 matplotlib 绘图的角落
【发布时间】:2018-04-18 08:06:41
【问题描述】:

我想在多轴图中按字母顺序标记我的图。使用ax.text 和手动坐标,我可以在一个图形上实现:

ax.text(0.01, 0.96, 
    'A', transform=ax.transAxes, fontweight='bold', va='top', ha='left',
    backgroundcolor='k', color='white')

我希望黑框与左上角完全匹配。将上述代码应用于另一个图不起作用:

有没有办法让文字背景的黑框与轴角精确匹配?

【问题讨论】:

    标签: python matplotlib plot


    【解决方案1】:

    我发现了一种一致的方式,无论图形大小或轴的排列如何。对于 axAxesSubplot 对象使用:

    ax.annotate(
        'A', 
        (0, 1),
        xytext=(4, -4),
        xycoords='axes fraction',
        textcoords='offset points',
        fontweight='bold',
        color='white',
        backgroundcolor='k',
        ha='left', va='top')
    

    请注意,我的“全局”matplotlib 字体大小设置为 8。如果您使用其他字体大小,您可能必须更改 xytext 值。

    【讨论】:

    • 如何堆叠在另一个之上?
    • 你到底是什么意思?
    • 如何将两个注释放在一起并在它们之间留一些空隙?
    • 我还是不明白你的意思。请使用可视化示例在 stackoverflow 上打开一个新问题并将其链接到此处
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-10-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-02-27
    • 1970-01-01
    相关资源
    最近更新 更多