带有透明边框和非透明边缘的图例

2024-09-28 21:59:57 发布

您现在位置:Python中文网/ 问答频道 /正文

在图例中设置透明度时:

plt.legend(framealpha=0.5)

它同时影响背景和边缘。如何仅对背景而不对边缘应用透明度?你知道吗

我试过:

plt.legend(edgecolor=(0, 0, 0, 1.), facecolor=(1, 1, 1, 0.1))

我可以改变颜色,但不能改变透明度,也就是说,使用facecolor=(1, 0, 0, 0.1)确实可以将背景颜色改为红色,但是使用facecolor=(1, 0, 0, 0.5)在透明度上没有任何区别。你知道吗

我使用的是matplotlibv3.1.1。你知道吗


Tags: 颜色plt边缘背景图例legend透明度红色
1条回答
网友
1楼 · 发布于 2024-09-28 21:59:57

不幸的是,framealpha覆盖了实际边或面颜色的alpha值。因此,需要在图例面片上手动设置颜色,包括alpha。你知道吗

legend = plt.legend(loc="upper right", edgecolor="black")
legend.get_frame().set_alpha(None)
legend.get_frame().set_facecolor((0, 0, 1, 0.1))

相关问题 更多 >