Python實(shí)現(xiàn)區(qū)域填充的示例代碼
所用的庫及環(huán)境:
IDE:Pycharm
Python環(huán)境:python3.7
Matplotlib: Matplotlib 1.11
Numpy: Numpy1.15.
區(qū)域填充
前言
如何填充一塊區(qū)域,就是給一塊區(qū)域上色
代碼及效果圖
fill()函數(shù)介紹
文檔:https://matplotlib.org/api/_as_gen/matplotlib.pyplot.fill.html
介紹:繪制填充多邊形
屬性:
- args:是一個(gè)x,y的序列,每個(gè)多邊形由其節(jié)點(diǎn)x和y的位置列表定義
- color :填充的顏色
- alpha:透明度
只填充兩個(gè)圖形重合區(qū)域
代碼及效果圖
fill_between()函數(shù)介紹
- x:一個(gè)序列,定義曲線的節(jié)點(diǎn)的x坐標(biāo)
- y1:可以是一個(gè)序列,定義第一條曲線的y坐標(biāo)
- y2:可以是一個(gè)序列,定義第二條曲線的y坐標(biāo)
- where:一個(gè)可選參數(shù),布爾值,y1>y2表示y1線在上時(shí)填充,y1<y2表示y2線在上時(shí)填充
- interpolate :看圖中會(huì)發(fā)現(xiàn)有些填充的地方會(huì)有空白,此參數(shù)為Tur會(huì)自動(dòng)填充
- facecolor:要填充的顏色
加入interpolate參數(shù)效果:
示例
import matplotlib.pyplot as plt import numpy as np x= np.linspace(0,5*np.pi, 1000) y1 = np.sin(x) y2 = np.sin(2*x) #plt.plot(x,y1) #plt.plot(x,y2) plt.fill(x,y1,'b',alpha=0.5) plt.fill(x,y2,'r',alpha=0.3) plt.fill_between(x,y1,y2,facecolor='green') plt.grid(True) plt.show() ######################################################### plt.plot(x,y1,'b',alpha=0.5) plt.plot(x,y2,'r',alpha=0.3) #添加條件 #如果數(shù)據(jù)點(diǎn)比較少的情況下,會(huì)有縫隙出現(xiàn),使用interpolate可以填充縫隙 plt.fill_between(x,y1,y2,where=y1>=y2,facecolor='green',interpolate=True) plt.fill_between(x,y1,y2,where=y2>y1,facecolor='yellow',interpolate=True) plt.grid(True) plt.show() ########################################################### n = 256 X = np.linspace(-np.pi, np.pi, n, endpoint=True) Y = np.sin(2 * X) plt.plot(X, Y + 1, color='blue', alpha=1.00) plt.fill_between(X, 1, Y + 1, color='blue', alpha=.25) plt.plot(X, Y - 1, color='blue', alpha=1.00) plt.fill_between(X, -1, Y - 1, (Y - 1) > -1, color='blue', alpha=.25) plt.fill_between(X, -1, Y - 1, (Y - 1) < -1, color='red', alpha=.25) plt.xlim(-np.pi, np.pi) plt.xticks(()) plt.ylim(-2.5, 2.5) plt.yticks(())
效果圖:
參考視頻:《Python數(shù)據(jù)可視化分析 matplotlib教程》
結(jié)語:
感謝matplotlib提供的文檔,感謝麥子學(xué)院提供的視頻教學(xué)
到此這篇關(guān)于Python實(shí)現(xiàn)區(qū)域填充的示例代碼的文章就介紹到這了,更多相關(guān)Python 區(qū)域填充內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python?Melt函數(shù)將寬格式的數(shù)據(jù)表轉(zhuǎn)換為長格式
在數(shù)據(jù)處理和清洗中,melt函數(shù)是Pandas庫中一個(gè)強(qiáng)大而靈活的工具,它的主要功能是將寬格式的數(shù)據(jù)表轉(zhuǎn)換為長格式,從而更方便進(jìn)行分析和可視化,本文將深入探討melt函數(shù)的用法、參數(shù)解析以及實(shí)際應(yīng)用場(chǎng)景2023-12-12解決ImportError:cannot import name ‘Flatten‘&nb
這篇文章主要介紹了解決ImportError:cannot import name ‘Flatten‘ from ‘torch.nn‘問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-06-06Python 給某個(gè)文件名添加時(shí)間戳的方法
今天小編就為大家分享一篇Python 給某個(gè)文件名添加時(shí)間戳的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2018-10-10flask框架實(shí)現(xiàn)修改密碼和免密登錄功能
flask是python web開發(fā)的常用框架之一。本文將講述flask如何實(shí)現(xiàn)修改密碼和免密登錄功能2021-05-05Python?time模塊之時(shí)間戳與結(jié)構(gòu)化時(shí)間的使用
這篇文章主要為大家詳細(xì)介紹了Python中的time模塊以及如何利用time模塊實(shí)現(xiàn)時(shí)間戳與結(jié)構(gòu)化時(shí)間,文中的示例代碼講解詳細(xì),需要的可以參考一下2022-06-06