欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

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

 更新時(shí)間:2021年04月16日 12:06:24   作者:grace_cxj  
這篇文章主要介紹了python matplotlib繪圖實(shí)現(xiàn)刪除重復(fù)冗余圖例的操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧

問(wèn)題:

由于自己做項(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í)還要畫(huà)出兩點(diǎn)間的連線。

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

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

探索過(guò)程:

如何解決呢?

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

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

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

解決方案:

from collections import OrderedDict
import 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變量中,你之前所在畫(huà)布上畫(huà)的每一步應(yīng)該都會(huì)存在plt中。

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

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

clf() # 清圖

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

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

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

相關(guān)文章

  • python在線編譯器的簡(jiǎn)單原理及簡(jiǎn)單實(shí)現(xiàn)代碼

    python在線編譯器的簡(jiǎn)單原理及簡(jiǎn)單實(shí)現(xiàn)代碼

    這篇文章主要介紹了python在線編譯器的簡(jiǎn)單原理及簡(jiǎn)單實(shí)現(xiàn)代碼,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-02-02
  • 通過(guò)代碼實(shí)例展示Python中列表生成式的用法

    通過(guò)代碼實(shí)例展示Python中列表生成式的用法

    這篇文章主要介紹了通過(guò)代碼實(shí)例展示Python中列表生成式的用法,包括找出質(zhì)數(shù)、算平方數(shù)等基本用法,需要的朋友可以參考下
    2015-03-03
  • 對(duì)python中的iter()函數(shù)與next()函數(shù)詳解

    對(duì)python中的iter()函數(shù)與next()函數(shù)詳解

    今天小編就為大家分享一篇對(duì)python中的iter()函數(shù)與next()函數(shù)詳解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2018-10-10
  • python語(yǔ)音識(shí)別的轉(zhuǎn)換方法

    python語(yǔ)音識(shí)別的轉(zhuǎn)換方法

    語(yǔ)音識(shí)別技術(shù),也被稱(chēng)為自動(dòng)語(yǔ)音識(shí)別,目標(biāo)是以電腦自動(dòng)將人類(lèi)的語(yǔ)音內(nèi)容轉(zhuǎn)換為相應(yīng)的文字。應(yīng)用包括語(yǔ)音撥號(hào)、語(yǔ)音導(dǎo)航、室內(nèi)設(shè)備控制、語(yǔ)音文檔檢索、簡(jiǎn)單的聽(tīng)寫(xiě)數(shù)據(jù)錄入等。本文給大家介紹python語(yǔ)音識(shí)別的方法,感興趣的朋友一起看看吧
    2021-10-10
  • Python中模塊string.py詳解

    Python中模塊string.py詳解

    這篇文章主要介紹了Python中模塊之string.py的相關(guān)資料,文中介紹的非常詳細(xì),對(duì)大家具有一定的參考價(jià)值,需要的朋友們下面來(lái)一起看看吧。
    2017-03-03
  • Tensorflow2.1實(shí)現(xiàn)文本中情感分類(lèi)實(shí)現(xiàn)解析

    Tensorflow2.1實(shí)現(xiàn)文本中情感分類(lèi)實(shí)現(xiàn)解析

    這篇文章主要為大家介紹了Tensorflow2.1實(shí)現(xiàn)文本中情感分類(lèi)實(shí)現(xiàn)解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-11-11
  • Python使用Peewee創(chuàng)建數(shù)據(jù)庫(kù)的實(shí)現(xiàn)示例

    Python使用Peewee創(chuàng)建數(shù)據(jù)庫(kù)的實(shí)現(xiàn)示例

    Peewee是一個(gè)簡(jiǎn)單小巧的Python ORM,本文主要介紹了Python使用Peewee創(chuàng)建數(shù)據(jù)庫(kù)的實(shí)現(xiàn)示例,具有一定的參考價(jià)值,感興趣的可以了解一下
    2023-08-08
  • 關(guān)于python3安裝pip及requests庫(kù)的導(dǎo)入問(wèn)題

    關(guān)于python3安裝pip及requests庫(kù)的導(dǎo)入問(wèn)題

    小編最近快畢業(yè)了,閑著無(wú)事學(xué)習(xí)下python的內(nèi)容在學(xué)習(xí)到requsets庫(kù)的導(dǎo)入問(wèn)題時(shí)遇到一些問(wèn)題,通過(guò)查找相關(guān)資料問(wèn)題順利解決,今天小編把問(wèn)題解決思路及注意事項(xiàng)分享給大家供大家參考學(xué)習(xí)
    2021-05-05
  • python中把元組轉(zhuǎn)換為namedtuple方法

    python中把元組轉(zhuǎn)換為namedtuple方法

    在本篇文章里小編給大家整理的是一篇關(guān)于python中把元組轉(zhuǎn)換為namedtuple方法,有興趣的朋友們可以參考下。
    2020-12-12
  • 利用Python制作一個(gè)動(dòng)物識(shí)別小程序

    利用Python制作一個(gè)動(dòng)物識(shí)別小程序

    動(dòng)物識(shí)別是計(jì)算機(jī)視覺(jué)和模式識(shí)別領(lǐng)域的重要研究方向,它涉及通過(guò)圖像或視頻數(shù)據(jù)自動(dòng)識(shí)別和分類(lèi)不同種類(lèi)的動(dòng)物,隨著數(shù)字圖像技術(shù)和機(jī)器學(xué)習(xí)方法的快速發(fā)展,動(dòng)物識(shí)別在實(shí)際應(yīng)用中具有廣泛的潛力,本文將給大家介紹如何基于Python制作一個(gè)動(dòng)物識(shí)別小程序
    2023-10-10

最新評(píng)論