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

飲歌長(zhǎng)嘯
TA貢獻(xiàn)1951條經(jīng)驗(yàn) 獲得超3個(gè)贊
您應(yīng)該使用get_...
Patch 的方法來(lái)訪(fǎng)問(wèn)您想要的屬性:
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'
因此,在這個(gè)示例中,如果我只是在控制臺(tái)中寫(xiě)入,my_patch則該對(duì)象會(huì)給出<matplotlib.patches.Patch at 0x7fea0290d518> 。my_patch
添加回答
舉報(bào)
0/150
提交
取消