所以我正在使用一個Python包(Pycalphad),它使用matplotlib.patches來繪制圖表的圖例。這些色塊包含顏色和相應的標簽。在包中,條目被定義為(mpatches.Patch(color=colorlist[phase], label=phase)),并且phase是一個變化的變量。如果我想閱讀圖例條目之一,我只會返回<matplotlib.patches.Patch at 0x14e5373f108>。我不想更改包的代碼,而是使用我得到的代碼。那么有沒有辦法提取補丁中包含的信息并獲取補丁定義中使用的顏色和標簽呢?非常感謝您的幫助!
1 回答

飲歌長嘯
TA貢獻1951條經驗 獲得超3個贊
您應該使用get_...
Patch 的方法來訪問您想要的屬性:
from matplotlib import patches
my_patch = patches.Patch(color='red', label='my_patch')
my_patch.get_fc()? # this is the facecolor
Out[4]: (1.0, 0.0, 0.0, 1.0)
my_patch.get_ec()? # this is the edgecolor
Out[5]: (1.0, 0.0, 0.0, 1.0)
my_patch.get_label()? # and the label
Out[6]: 'my_patch'
因此,在這個示例中,如果我只是在控制臺中寫入,my_patch則該對象會給出<matplotlib.patches.Patch at 0x7fea0290d518> 。my_patch
添加回答
舉報
0/150
提交
取消