python中matplotlib條件背景顏色的實(shí)現(xiàn)
如何根據(jù)圖表中沒(méi)有的變量更改折線圖的背景顏色?例如,如果我有以下數(shù)據(jù)幀:
import numpy as np import pandas as pd dates = pd.date_range('20000101', periods=800) df = pd.DataFrame(index=dates) df['A'] = np.cumsum(np.random.randn(800)) df['B'] = np.random.randint(-1,2,size=800)
如果我做df.A的折線圖,如何根據(jù)該時(shí)間點(diǎn)'B'列的值更改背景顏色?
例如,如果在該日期B = 1,則該日期的背景為綠色。
如果B = 0,則該日期的背景應(yīng)為黃色。
如果B = -1那么背景那個(gè)日期應(yīng)該是紅色的。
添加我最初考慮使用axvline的解決方法,但@jakevdp回答正是看起來(lái)因?yàn)椴恍枰猣or循環(huán):首先需要添加一個(gè)'i'列作為計(jì)數(shù)器,然后整個(gè)代碼看起來(lái)像:
dates = pd.date_range('20000101', periods=800) df = pd.DataFrame(index=dates) df['A'] = np.cumsum(np.random.randn(800)) df['B'] = np.random.randint(-1,2,size=800) df['i'] = range(1,801) # getting the row where those values are true wit the 'i' value zeros = df[df['B']== 0]['i'] pos_1 = df[df['B']==1]['i'] neg_1 = df[df['B']==-1]['i'] ax = df.A.plot() for x in zeros: ax.axvline(df.index[x], color='y',linewidth=5,alpha=0.03) for x in pos_1: ax.axvline(df.index[x], color='g',linewidth=5,alpha=0.03) for x in neg_1: ax.axvline(df.index[x], color='r',linewidth=5,alpha=0.03)
總結(jié)
以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,謝謝大家對(duì)腳本之家的支持。
相關(guān)文章
matplotlib源碼解析標(biāo)題實(shí)現(xiàn)(窗口標(biāo)題,標(biāo)題,子圖標(biāo)題不同之間的差異)
這篇文章主要介紹了matplotlib源碼解析標(biāo)題實(shí)現(xiàn)(窗口標(biāo)題,標(biāo)題,子圖標(biāo)題不同之間的差異),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2021-02-02python進(jìn)階教程之循環(huán)相關(guān)函數(shù)range、enumerate、zip
這篇文章主要介紹了python進(jìn)階教程之循環(huán)相關(guān)函數(shù)range、enumerate、zip,在使用循環(huán)程序經(jīng)常要配合這些函數(shù)來(lái)完成循環(huán),需要的朋友可以參考下2014-08-08解決在Python編輯器pycharm中程序run正常debug錯(cuò)誤的問(wèn)題
今天小編就為大家分享一篇解決在Python編輯器pycharm中程序run正常debug錯(cuò)誤的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-01-01Pandas使用Merge與Join和Concat分別進(jìn)行合并數(shù)據(jù)效率對(duì)比分析
這篇文章主要給大家介紹了關(guān)于pandas中DataFrame數(shù)據(jù)合并連接(merge、join、concat)的相關(guān)資料,文中介紹的非常詳細(xì),需要的朋友可以參考下2022-12-12簡(jiǎn)單分析python的類變量、實(shí)例變量
在本篇文章中小編給大家整理的是關(guān)于python類變量、實(shí)例變量的知識(shí)點(diǎn)內(nèi)容,有需要的朋友們可以學(xué)習(xí)下。2019-08-08matplotlib部件之矩形選區(qū)(RectangleSelector)的實(shí)現(xiàn)
這篇文章主要介紹了matplotlib部件之矩形選區(qū)(RectangleSelector)的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2021-02-02