gpt4 book ai didi

python - 设置 AnchoredOffsetbox 的线宽和面颜色?

转载 作者:行者123 更新时间:2023-12-01 04:21:26 25 4
gpt4 key购买 nike

是否可以更改 AnchoredOffsetbox 的线宽、面颜色等?

我用它来列出我的图旁边的一些变量(例如“A=1”、“B=2”),以这种方式“=”垂直对齐,所以它有点像额外的图例(但句柄也是文本)。但我不知道如何像图例那样设置框架的属性。

非常感谢任何提示!

代码:

import matplotlib.pyplot as plt
from matplotlib.offsetbox import AnchoredOffsetbox, TextArea, HPacker, VPacker

fig = plt.figure(1, figsize=(3,3))
ax = plt.subplot(111)

p_txt0 = ['A = ', 'BBB = ']
p_num0 = [1.0, 2.0]
p_txt = [TextArea(text, textprops=dict(size='medium',weight='bold'))
for text in p_txt0]
p_num = [TextArea('%6.2f' % num, textprops=dict(size='medium',weight='bold'))
for num in p_num0]
p_vbox_txt = VPacker(children=p_txt, align="right", pad=0, sep=5)
p_vbox_num = VPacker(children=p_num, align="right", pad=0, sep=5)
box = HPacker(children=[p_vbox_txt,p_vbox_num], align="center", pad=5, sep=3)

parambox = AnchoredOffsetbox(loc=2, child=box, pad=0.0, frameon=True,
borderpad=0.0, bbox_to_anchor=(1.1, 1.0),
bbox_transform=ax.transAxes)

parambox.set_clip_on(False) #so box won't be cut off when saving
ax.add_artist(parambox)

plt.savefig('offsetbox.png', bbox_extra_artists=(parambox,), bbox_inches='tight')

example

最佳答案

看起来您可以访问您的 parambox 补丁,并设置其属性:

ax.add_artist 之前,尝试以下几行:

parambox.patch.set_linewidth(4)
parambox.patch.set_edgecolor('r')
parambox.patch.set_facecolor('g')

enter image description here

我认为这是设置底层matplotlib.patches.Patch的属性,所以你可以看看here了解更多可以更改的选项(例如 set_alphaset_linestyle)。

关于python - 设置 AnchoredOffsetbox 的线宽和面颜色?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33634522/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com