Python實現區域填充的示例代碼
IDE:Pycharm
Python環境:python3.7
Matplotlib: Matplotlib 1.11
Numpy: Numpy1.15.
區域填充前言
如何填充一塊區域,就是給一塊區域上色
代碼及效果圖
fill()函數介紹
文檔:https://matplotlib.org/api/_as_gen/matplotlib.pyplot.fill.html
介紹:繪制填充多邊形
屬性:
args:是一個x,y的序列,每個多邊形由其節點x和y的位置列表定義 color :填充的顏色 alpha:透明度只填充兩個圖形重合區域
代碼及效果圖
fill_between()函數介紹
x:一個序列,定義曲線的節點的x坐標 y1:可以是一個序列,定義第一條曲線的y坐標 y2:可以是一個序列,定義第二條曲線的y坐標 where:一個可選參數,布爾值,y1>y2表示y1線在上時填充,y1<y2表示y2線在上時填充 interpolate :看圖中會發現有些填充的地方會有空白,此參數為Tur會自動填充 facecolor:要填充的顏色加入interpolate參數效果:
import matplotlib.pyplot as pltimport 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)#添加條件#如果數據點比較少的情況下,會有縫隙出現,使用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 = 256X = 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數據可視化分析 matplotlib教程》
結語:感謝matplotlib提供的文檔,感謝麥子學院提供的視頻教學
到此這篇關于Python實現區域填充的示例代碼的文章就介紹到這了,更多相關Python 區域填充內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!
相關文章: