<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
Matplotlib是Python的繪相簿,它與Numpy一起使用
【引例】
畫出y=2*x+5的函數影象
import numpy as np from matplotlib import pyplot as plt #設定橫座標取值、確定函數表示式 x = np.arange(1, 11) y = 2 * x + 5 #新增標題、橫座標、縱座標標籤 plt.title("Matplotlib demo") plt.xlabel("x axis caption") plt.ylabel("y axis caption") #畫函數影象 plt.plot(x, y) plt.show()
【執行結果】
如果需要函數影象以圓點呈現,而不是用線呈現,則需要將 plt.plot(x,y)改為plt.plot(x,y,'ob')
【執行結果】
import numpy as np from matplotlib import pyplot as plt #設定橫座標取值、確定函數表示式 x = np.arange(0, 3*np.pi,0.1) y = np.sin(x) #新增標題、橫座標、縱座標標籤 plt.title("y=sin(x)") plt.xlabel("x axis caption") plt.ylabel("y axis caption") #畫函數影象 plt.plot(x, y) plt.show()
【執行結果】
餘弦函數只需將 y = np.sin(x) 改為 y = np.cos(x)即可
應用subplot()函數,在同一圖中繪製不同的東西
# ReLU和Sigmoid啟用函數示意圖 import numpy as np import matplotlib.pyplot as plt import matplotlib.patches as patches #設定圖片大小 plt.figure(figsize=(6, 4)) # x是1維陣列,陣列大小是從-10. 到10.的實數,每隔0.1取一個點 x = np.arange(-10, 10, 0.1) # 計算 Sigmoid函數 s = (np.exp(x)-np.exp(-x))/(np.exp(x)+np.exp(-x)) # 計算ReLU函數 y = np.clip(x, a_min = 0., a_max = None) ######################################################### # 以下部分為畫圖程式 # 設定兩個子圖視窗,將Sigmoid的函數影象畫在上邊 f = plt.subplot(2,1,1) # 畫出函數曲線 plt.plot(x, s, color='r') # 新增文字說明 plt.text(-5., 0.9, r'$y=sigmoid(x)$', fontsize=13) # 設定座標軸格式 currentAxis=plt.gca() currentAxis.xaxis.set_label_text('x', fontsize=15) currentAxis.yaxis.set_label_text('y', fontsize=15) # 將ReLU的函數影象畫在下邊 f = plt.subplot(2,1,2) # 畫出函數曲線 plt.plot(x, y, color='g') # 新增文字說明 plt.text(-3.0, 9, r'$y=ReLU(x)$', fontsize=13) # 設定座標軸格式 currentAxis=plt.gca() currentAxis.xaxis.set_label_text('x', fontsize=15) currentAxis.yaxis.set_label_text('y', fontsize=15) plt.show()
【執行結果】
from matplotlib import pyplot as plt import numpy as np n = 256 #n可以理解為曲線的平滑程度 X = np.linspace(-np.pi,np.pi,n,endpoint=True) Y = np.sin(2*X) plt.plot(X,Y+1,color='red',alpha=1.00) plt.plot(X,Y-1,color='blue',alpha=1.00) plt.show()
【執行結果】
from matplotlib import pyplot as plt #資料組1 x = [5,8,11] #橫座標 y = [12,16,6] #對應值 #資料組2 x2 = [6,9,12] #橫座標 y2 = [6,15,7] #對應值 plt.bar(x, y, color = 'r', align = 'center') plt.bar(x2, y2, color = 'g', align = 'center') plt.title('Bar graph') plt.ylabel('Y axis') plt.xlabel('X axis') plt.show()
【執行結果】
from matplotlib import pyplot as plt import numpy as np n = 1024 X = np.random.normal(0,30,n) Y = np.random.normal(0,30,n) plt.title('scale:30') plt.scatter(X,Y,color='red') plt.show()
【執行結果】以下分別是方差分別為5,10,15,20,25,30的散點圖
from matplotlib import pyplot as plt import numpy as np def f(x,y):return(1-x/2+x**5+y**3)*np.exp(-x**2-y**2) #等高線模型 n = 256 #n可以理解為曲線的平滑程度 x = np.linspace(-3,3,n) y = np.linspace(-3,3,n) X,Y = np.meshgrid(x,y) plt.contourf(X,Y,f(X,Y),8,alpha=.75,cmap='jet') C = plt.contour(X,Y,f(X,Y),8,color='black',linewidth=.5) plt.show()
【執行結果】
from matplotlib import pyplot as plt import numpy as np def f(x,y):return(1-x/2+x**5+y**3)*np.exp(-x**2-y**2) n = 10 x = np.linspace(-3,3,4*n) y = np.linspace(-3,3,4*n) X,Y = np.meshgrid(x,y) plt.imshow(f(X,Y)) plt.show()
【執行結果】
from matplotlib import pyplot as plt import numpy as np n = 20 #n決定了有多少個分割區,該程式碼顯示有20個分割區 Z = np.random.uniform(0,1,n) plt.pie(Z) plt.show()
【執行結果】
from matplotlib import pyplot as plt import numpy as np n = 8 X,Y = np.mgrid[0:n,0:n] plt.quiver(X,Y,color="red") plt.show()
【執行結果】
from matplotlib import pyplot as plt import numpy as np plt.figure(figsize=(4,4)) ax1 = plt.subplot(111,projection='polar') ax1.set_title('spot fish') ax1.set_rlim(0,12) data = np.random.randint(1,10,10) theta = np.arange(0,2*np.pi,2*np.pi/10) bar = ax1.bar(theta,data,alpha=0.5) for r,bar in zip(data,bar): bar.set_facecolor(plt.cm.jet(r/10.)) plt.show()
【執行結果】
到此這篇關於使用 NumPy 和 Matplotlib 繪製函數圖的文章就介紹到這了,更多相關NumPy Matplotlib 內容請搜尋it145.com以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援it145.com!
相關文章
<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
综合看Anker超能充系列的性价比很高,并且与不仅和iPhone12/苹果<em>Mac</em>Book很配,而且适合多设备充电需求的日常使用或差旅场景,不管是安卓还是Switch同样也能用得上它,希望这次分享能给准备购入充电器的小伙伴们有所
2021-06-01 09:31:42
除了L4WUDU与吴亦凡已经多次共事,成为了明面上的厂牌成员,吴亦凡还曾带领20XXCLUB全队参加2020年的一场音乐节,这也是20XXCLUB首次全员合照,王嗣尧Turbo、陈彦希Regi、<em>Mac</em> Ova Seas、林渝植等人全部出场。然而让
2021-06-01 09:31:34
目前应用IPFS的机构:1 谷歌<em>浏览器</em>支持IPFS分布式协议 2 万维网 (历史档案博物馆)数据库 3 火狐<em>浏览器</em>支持 IPFS分布式协议 4 EOS 等数字货币数据存储 5 美国国会图书馆,历史资料永久保存在 IPFS 6 加
2021-06-01 09:31:24
开拓者的车机是兼容苹果和<em>安卓</em>,虽然我不怎么用,但确实兼顾了我家人的很多需求:副驾的门板还配有解锁开关,有的时候老婆开车,下车的时候偶尔会忘记解锁,我在副驾驶可以自己开门:第二排设计很好,不仅配置了一个很大的
2021-06-01 09:30:48
不仅是<em>安卓</em>手机,苹果手机的降价力度也是前所未有了,iPhone12也“跳水价”了,发布价是6799元,如今已经跌至5308元,降价幅度超过1400元,最新定价确认了。iPhone12是苹果首款5G手机,同时也是全球首款5nm芯片的智能机,它
2021-06-01 09:30:45