色综合图-色综合图片-色综合图片二区150p-色综合图区-玖玖国产精品视频-玖玖香蕉视频

您的位置:首頁技術(shù)文章
文章詳情頁

python matplotlib繪圖實(shí)現(xiàn)刪除重復(fù)冗余圖例的操作

瀏覽:3日期:2022-06-22 10:42:15
問題:

由于自己做項(xiàng)目的時(shí)候,需要循環(huán)的繪制數(shù)據(jù),假設(shè)有100個(gè)樣本,每個(gè)樣本包含兩個(gè)坐標(biāo)點(diǎn)(A, B),我需要對(duì)這兩個(gè)點(diǎn)標(biāo)上不同的顏色,同時(shí)還要畫出兩點(diǎn)間的連線。

顯然這個(gè)問題中圖例我只需要3個(gè)(A點(diǎn),B點(diǎn),AB的連線),而不是300個(gè),因?yàn)槊總€(gè)樣本的A點(diǎn)都是同樣的顏色,B點(diǎn)也都是一樣的顏色,AB的連線也是。

但是單純的在畫完圖之后用plt.legend(), 它會(huì)給你畫出所有300個(gè)圖例來,這肯定不是我想要的。

探索過程:

如何解決呢?

當(dāng)然有一種很強(qiáng)制的方法,就是只在畫第一個(gè)樣本,或最后一個(gè)樣本時(shí),給其指定label,其它樣本時(shí)不給label,就不會(huì)畫出來了。

但是我在想有沒有更好地辦法,百度了半天,窮盡所有關(guān)鍵詞,無果。

轉(zhuǎn)而谷歌,想著要不把關(guān)鍵詞換成英語看看(以前總覺得看英文的博客會(huì)比中文的慢很多,總會(huì)更偏向于母語閱讀,但是這次經(jīng)歷大概會(huì)改變我之后的態(tài)度,相比起為了排除百度的大量無關(guān)答案所花的漫長(zhǎng)的時(shí)間,好像還不如直接搜索英文來得有效率,關(guān)鍵詞搜的就是:python omit redundant legend),結(jié)果第一條搜索結(jié)果就看到了我想要的解決方案,很是驚喜,本著方便自己以后查找,也方便遇到同樣問題的人,故而記錄下來,雖然不是什么多神的東西啦。

解決方案:

from collections import OrderedDictimport matplotlib.pyplot as plt handles, labels = plt.gca().get_legend_handles_labels()by_label = OrderedDict(zip(labels, handles))plt.legend(by_label.values(), by_label.keys())理解:

plt的legend函數(shù)可接收兩個(gè)參數(shù),一個(gè)是handles列表,一個(gè)是label列表。

引入有序字典OrderedDict的目的就是去除冗余的圖例,因?yàn)樽值涞逆I值不能重復(fù)(即重復(fù)的只保留一個(gè))。

第一行的意思應(yīng)該是迭代地將當(dāng)前plt中存的所有handles和labels返回到handles變量和labels變量中,你之前所在畫布上畫的每一步應(yīng)該都會(huì)存在plt中。

所以,上述代碼的作用是:僅保留plt中存在的所有非同名的圖例名稱,不出現(xiàn)重復(fù)圖例名稱

補(bǔ)充:Python/matplotlib之清空繪圖

clf() # 清圖

cla() # 清坐標(biāo)軸

close() # 關(guān)窗口

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持好吧啦網(wǎng)。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教。

標(biāo)簽: Python 編程
相關(guān)文章:
主站蜘蛛池模板: 男人和女人的做刺激性视频 | 天天亚洲 | 九九色综合网 | 无限观看社区在线视频 | 亚洲国产另类久久久精品小说 | 手机看片免费基地 | 精品久久免费视频 | 免费看成人毛片日本久久 | 欧美精品日日鲁夜夜添 | 欧美精品久久久久久久久大尺度 | 亚洲精品久久一区毛片 | 免费观看欧美一级片 | 国产成在线观看免费视频 | 亚洲国产伦理 | 一级做a爰片久久毛片看看 一级做a爰片久久毛片鸭王 | 美女扒开腿让男生桶爽网站 | 成人久久18免费网站入口 | 亚洲精品理论 | 成人午夜在线观看国产 | 草久久免费视频 | 91久久精品国产一区二区 | 亚洲骚片| 欧美日韩一 | 三级韩国一区久久二区综合 | 自拍视频在线观看视频精品 | 精品一区二区三区视频 | 亚洲精品第一国产综合野 | 国产伦久视频免费观看视频 | 欧美午夜伦y4480私人影院 | 国产成人精品视频免费 | 亚洲成人xxx | 欧美第一网站 | 国产欧美日韩中文久久 | 亚洲精品99久久久久中文字幕 | 外国三级毛片 | 亚洲欧美一区二区三区久本道 | 天堂素人搭讪系列嫩模在线观看 | 国产黄色小视频在线观看 | 在线久草| 久久精品国产400部免费看 | 亚洲综合色一区二区三区另类 |