matplotlib圖例legend語(yǔ)法及設(shè)置的方法
1.圖例legend基礎(chǔ)語(yǔ)法及用法
legend語(yǔ)法參數(shù)如下: matplotlib.pyplot.legend(*args, **kwargs)
| Keyword | Description |
| loc | Location code string, or tuple (see below).圖例所有figure位置 |
| prop | the font property字體參數(shù) |
| fontsize | the font size (used only if prop is not specified) |
| markerscale | the relative size of legend markers vs. original 圖例標(biāo)記與原始標(biāo)記的相對(duì)大小 |
| markerfirst | If True (default), marker is to left of the label. 如果為T(mén)rue,則圖例標(biāo)記位于圖例標(biāo)簽的左側(cè) |
| numpoints | the number of points in the legend for line 為線條圖圖例條目創(chuàng)建的標(biāo)記點(diǎn)數(shù) |
| scatterpoints | the number of points in the legend for scatter plot 為散點(diǎn)圖圖例條目創(chuàng)建的標(biāo)記點(diǎn)數(shù) |
| scatteryoffsets | a list of yoffsets for scatter symbols in legend 為散點(diǎn)圖圖例條目創(chuàng)建的標(biāo)記的垂直偏移量 |
| frameon | If True, draw the legend on a patch (frame). 控制是否應(yīng)在圖例周圍繪制框架 |
| fancybox | If True, draw the frame with a round fancybox. 控制是否應(yīng)在構(gòu)成圖例背景的FancyBboxPatch周圍啟用圓邊 |
| shadow | If True, draw a shadow behind legend. 控制是否在圖例后面畫(huà)一個(gè)陰影 |
| framealpha | Transparency of the frame. 控制圖例框架的 Alpha 透明度 |
| edgecolor | Frame edgecolor. |
| facecolor | Frame facecolor. |
| ncol | number of columns 設(shè)置圖例分為n列展示 |
| borderpad | the fractional whitespace inside the legend border 圖例邊框的內(nèi)邊距 |
| labelspacing | the vertical space between the legend entries 圖例條目之間的垂直間距 |
| handlelength | the length of the legend handles 圖例句柄的長(zhǎng)度 |
| handleheight | the height of the legend handles 圖例句柄的高度 |
| handletextpad | the pad between the legend handle and text 圖例句柄和文本之間的間距 |
| borderaxespad | the pad between the axes and legend border 軸與圖例邊框之間的距離 |
| columnspacing | the spacing between columns 列間距 |
| title | the legend title |
| bbox_to_anchor | the bbox that the legend will be anchored.指定圖例在軸的位置 |
| bbox_transform | the transform for the bbox. transAxes if None. |
(1)設(shè)置圖例位置
使用loc參數(shù)
|
0: ‘best'
1: ‘upper right'
2: ‘upper left'
3: ‘lower left'
|
4: ‘lower right'
5: ‘right'
6: ‘center left'
|
7: ‘center right'
8: ‘lower center'
9: ‘upper center'
10: ‘center'
|
(2)設(shè)置圖例字體
#設(shè)置字體大小
fontsize : int or float or {‘xx-small', ‘x-small', ‘small', ‘medium', ‘large', ‘x-large', ‘xx-large'}
(3)設(shè)置圖例邊框及背景
plt.legend(loc='best',frameon=False) #去掉圖例邊框 plt.legend(loc='best',edgecolor='blue') #設(shè)置圖例邊框顏色 plt.legend(loc='best',facecolor='blue') #設(shè)置圖例背景顏色,若無(wú)邊框,參數(shù)無(wú)效
(4)設(shè)置圖例標(biāo)題
plt.legend(loc='best',title='figure 1 legend') #去掉圖例邊框
2.legend面向?qū)ο竺?/strong>
(1)獲取并設(shè)置legend圖例
plt.legend(loc=0, numpoints=1) leg = plt.gca().get_legend() #或leg=ax.get_legend() ltext = leg.get_texts() plt.setp(ltext, fontsize=12,fontweight='bold')
(2)設(shè)置圖例
legend = ax.legend((rectsTest1, rectsTest2, rectsTest3), ('test1', 'test2', 'test3'))
legend = ax.legend(loc='upper center', shadow=True, fontsize='x-large')
legend.get_frame().set_facecolor('red') #設(shè)置圖例legend背景為紅色
frame = legend.get_frame()
frame.set_alpha(1)
frame.set_facecolor('none') #設(shè)置圖例legend背景透明
(3)移除圖例
ax1.legend_.remove() ##移除子圖ax1中的圖例 ax2.legend_.remove() ##移除子圖ax2中的圖例 ax3.legend_.remove() ##移除子圖ax3中的圖例
3.案例:設(shè)置圖例legend到圖形邊界外
#主要是bbox_to_anchor的使用 box = ax1.get_position() ax1.set_position([box.x0, box.y0, box.width , box.height* 0.8]) ax1.legend(loc='center', bbox_to_anchor=(0.5, 1.2),ncol=3)
4.案例:顯示多圖例legend
import matplotlib.pyplot as plt import numpy as np x = np.random.uniform(-1, 1, 4) y = np.random.uniform(-1, 1, 4) p1, = plt.plot([1,2,3]) p2, = plt.plot([3,2,1]) l1 = plt.legend([p2, p1], ["line 2", "line 1"], loc='upper left') p3 = plt.scatter(x[0:2], y[0:2], marker = 'D', color='r') p4 = plt.scatter(x[2:], y[2:], marker = 'D', color='g') # This removes l1 from the axes. plt.legend([p3, p4], ['label', 'label1'], loc='lower right', scatterpoints=1) # Add l1 as a separate artist to the axes plt.gca().add_artist(l1)

import matplotlib.pyplot as plt line1, = plt.plot([1,2,3], label="Line 1", linestyle='--') line2, = plt.plot([3,2,1], label="Line 2", linewidth=4) # 為第一個(gè)線條創(chuàng)建圖例 first_legend = plt.legend(handles=[line1], loc=1) # 手動(dòng)將圖例添加到當(dāng)前軸域 ax = plt.gca().add_artist(first_legend) # 為第二個(gè)線條創(chuàng)建另一個(gè)圖例 plt.legend(handles=[line2], loc=4) plt.show()

到此這篇關(guān)于matplotlib圖例legend語(yǔ)法及設(shè)置的方法的文章就介紹到這了,更多相關(guān)matplotlib legend內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
python3.4實(shí)現(xiàn)郵件發(fā)送功能
這篇文章主要為大家詳細(xì)介紹了python3.4實(shí)現(xiàn)郵件發(fā)送功能,含帶中文附件,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-05-05
Scrapy之爬取結(jié)果導(dǎo)出為Excel的實(shí)現(xiàn)過(guò)程
這篇文章主要介紹了Scrapy之爬取結(jié)果導(dǎo)出為Excel的實(shí)現(xiàn)過(guò)程,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-12-12
Django執(zhí)行源生mysql語(yǔ)句實(shí)現(xiàn)過(guò)程解析
這篇文章主要介紹了Django執(zhí)行源生mysql語(yǔ)句實(shí)現(xiàn)過(guò)程解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-11-11
AI:如何訓(xùn)練機(jī)器學(xué)習(xí)的模型
這篇文章主要介紹了是如何進(jìn)行機(jī)器學(xué)習(xí)的模型的訓(xùn)練,全文邏輯清晰,簡(jiǎn)單易懂,如果您正在學(xué)習(xí)機(jī)器學(xué)習(xí)那么可以參考下,說(shuō)不定會(huì)有不一樣的收貨2021-04-04
python中for用來(lái)遍歷range函數(shù)的方法
今天小編就為大家分享一篇python中for用來(lái)遍歷range函數(shù)的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-06-06
PyTorch加載預(yù)訓(xùn)練模型實(shí)例(pretrained)
今天小編就為大家分享一篇PyTorch加載預(yù)訓(xùn)練模型實(shí)例(pretrained),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-01-01
python利用tkinter實(shí)現(xiàn)屏保
這篇文章主要為大家詳細(xì)介紹了python利用tkinter實(shí)現(xiàn)屏保,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-07-07
基于python opencv單目相機(jī)標(biāo)定的示例代碼
這篇文章主要介紹了基于python opencv單目相機(jī)標(biāo)定的實(shí)現(xiàn)代碼,代碼簡(jiǎn)單易懂,對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-01-01
從頭學(xué)Python之編寫(xiě)可執(zhí)行的.py文件
這篇文章主要介紹了從頭學(xué)Python之編寫(xiě)可執(zhí)行的.py文件,具有一定參考價(jià)值,需要的朋友可以了解下。2017-11-11

