如何在 Matplotlib 中更改繪圖背景的實(shí)現(xiàn)
介紹
Matplotlib是Python中使用最廣泛的數(shù)據(jù)可視化庫(kù)之一。無論是簡(jiǎn)單還是復(fù)雜的可視化項(xiàng)目,它都是大多數(shù)人的首選庫(kù)。
在本教程中,我們將研究如何在Matplotlib中更改繪圖的背景。
導(dǎo)入數(shù)據(jù)和庫(kù)
讓我們首先導(dǎo)入所需的庫(kù)。顯然,我們將需要Matplotlib,并且將使用Pandas讀取數(shù)據(jù):
import matplotlib.pyplot as plt import pandas as pd
具體來說,我們將使用Seattle Weather Dataset(https://www.kaggle.com/rtatman/did-it-rain-in-seattle-19482017)這個(gè)數(shù)據(jù)集:
weather_data = pd.read_csv("seattleWeather.csv")
print(weather_data.head())
DATE PRCP TMAX TMIN RAIN 0 1948-01-01 0.47 51 42 True 1 1948-01-02 0.59 45 36 True 2 1948-01-03 0.42 45 35 True 3 1948-01-04 0.31 45 34 True 4 1948-01-05 0.17 45 32 True
創(chuàng)建繪圖
現(xiàn)在,讓我們創(chuàng)建一個(gè)簡(jiǎn)單的Matplotlib 散點(diǎn)圖,其中包含一些我們想要可視化的變量:
PRCP = weather_data['PRCP'] TMAX = weather_data['TMAX'] TMIN = weather_data['TMIN']
現(xiàn)在,我們將在最低溫度和降水之間構(gòu)建一個(gè)散點(diǎn)圖,并使用PyPlot中的show()函數(shù)將其顯示。

我們生成的圖形是沒什么問題,但看起來有點(diǎn)普通。讓我們嘗試重新自定義它。本文中使用兩種不同的方法來自定義繪圖的背景。
在Matplotlib中更改繪圖背景
現(xiàn)在,讓我們繼續(xù)更改該繪圖的背景。我們可以使用兩種不同的方法來做到這一點(diǎn)。我們可以更改當(dāng)前設(shè)置為white的底部顏色?;蛘撸覀兛梢允褂?code>imshow()輸入圖片。
在Matplotlib中更改軸背景
首先讓我們更改底部的顏色。這可以通過set()函數(shù),傳入face參數(shù)及其新值來完成,也可以通過專用的set_facecolor()函數(shù)來完成:
ax = plt.axes()
ax.set_facecolor("orange")
# OR
ax.set(facecolor = "orange")
plt.scatter(TMIN, PRCP)
plt.show()

這兩種方法均會(huì)產(chǎn)生相同的結(jié)果,因?yàn)樗鼈兌荚诤笈_(tái)調(diào)用相同的函數(shù)。
在Matplotlib中更改繪圖背景
如果要設(shè)置圖形的背景并且需要使軸透明,可以在創(chuàng)建圖形時(shí)使用set_alpha()參數(shù)來完成。讓我們創(chuàng)建一個(gè)圖形和一個(gè)軸對(duì)象。當(dāng)然,您也可以使用set()函數(shù),并傳遞alpha屬性。
整個(gè)圖形的顏色將為藍(lán)色,我們首先將軸對(duì)象的alpha設(shè)置為1.0,這意味著完全不透明。我們將軸對(duì)象著色為橙色,從而在藍(lán)色圖中為我們提供了橙色背景:
fig = plt.figure()
fig.patch.set_facecolor('blue')
fig.patch.set_alpha(0.6)
ax = fig.add_subplot(111)
ax.patch.set_facecolor('orange')
ax.patch.set_alpha(1.0)
plt.scatter(TMIN, PRCP)
plt.show()

現(xiàn)在,讓我們看看將alpha調(diào)整為0.0時(shí)會(huì)發(fā)生什么:
fig = plt.figure()
fig.patch.set_facecolor('blue')
fig.patch.set_alpha(0.6)
ax = fig.add_subplot(111)
ax.patch.set_facecolor('orange')
ax.patch.set_alpha(0.0)
plt.scatter(TMIN, PRCP)
plt.show()

注意繪圖本身的背景現(xiàn)在是透明的。
將圖像添加到Matplotlib中的繪圖背景
如果您想將圖像用作繪圖的背景,則可以使用PyPlot的imread()函數(shù)來完成。此函數(shù)將圖像加載到Matplotlib中,該圖像可與```imshow()``函數(shù)一起顯示。
為了在圖像上方繪制,必須指定圖像的范圍。默認(rèn)情況下,Matplotlib使用圖像的左上角作為圖像的原點(diǎn)。我們可以給imshow()函數(shù)提供一個(gè)點(diǎn)列表,指定應(yīng)該顯示圖像的哪個(gè)區(qū)域。與子圖組合時(shí),可以在圖像上方插入另一個(gè)圖。
讓我們使用下雨的圖像作為背景:
img = plt.imread("rain.jpg")
fig, ax = plt.subplots()
ax.imshow(img, extent=[-5, 80, -5, 30])
ax.scatter(TMIN, PRCP, color="#ebb734")
plt.show()

范圍參數(shù)按此順序接受的參數(shù)包括:horizontal_min,horizontal_max,vertical_min,vertical_max)。在這里,我們讀取了圖像,將其裁剪并使用imshow()在軸上顯示。
小結(jié)
在本教程中,我們介紹了使用Python和Matplotlib更改繪圖背景的幾種方法。
到此這篇關(guān)于如何在 Matplotlib 中更改繪圖背景的文章就介紹到這了,更多相關(guān)如何在 Matplotlib 中更改繪圖背景內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
python利用google翻譯方法實(shí)例(翻譯字幕文件)
這篇文章主要給大家介紹了關(guān)于python利用google翻譯(翻譯字幕文件)的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-09-09
Python實(shí)現(xiàn)讀取文件中的特定行的方法詳解
這篇文章主要為大家詳細(xì)介紹了如何在Python中實(shí)現(xiàn)讀取文件中的特定行,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2024-03-03
python 常用日期處理-- datetime 模塊的使用
這篇文章主要介紹了python 如何對(duì)日期進(jìn)行處理,幫助大家更好的理解和學(xué)習(xí)python,感興趣的朋友可以了解下2020-09-09
python循環(huán)之彩色圓環(huán)實(shí)現(xiàn)示例
這篇文章主要為大家介紹了python循環(huán)之彩色圓環(huán)實(shí)現(xiàn)示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-06-06

