matplotlibpython畫圖
① python matplotlib數據作圖
一、使用numpy生成長度為100的等差序列作為自變數,命名為x,並使用三角函數SiNx和cosx**2生成兩個因變數,命名為y和Z。
② python matlibplot 怎樣畫圖例
用於添加圖例的函數是plt.legend(),我們通過例子來對其進行介紹。
%matplotlib inline
import matplotlib.pyplot as plt
import matplotlib as mpl
import numpy as np
#多數據並列柱狀圖
mpl.rcParams["font.sans-serif"]=["SimHei"]
mpl.rcParams["axes.unicode_minus"]=False
x = np.arange(6)
y1 = [23,5,14,27,18,14]
y2 = [10,27,25,18,23,16]
tick_label = ["A","B","C","D","E","F"]
bar_width = 0.35
plt.bar(x,y1,bar_width,align="center",label="班級A",alpha=0.5)
plt.bar(x+bar_width,y2,bar_width,align="center",label="班級B",alpha=0.5)
plt.xlabel("成績等級")
plt.ylabel("人數")
plt.xticks(x+bar_width/2,tick_label)
plt.legend(bbox_to_anchor=(1,1),#圖例邊界框起始位置
loc="upper right",#圖例的位置
ncol=1,#列數
mode="None",#當值設置為「expend」時,圖例會水平擴展至整個坐標軸區域
borderaxespad=0,#坐標軸和圖例邊界之間的間距
title="班級",#圖例標題
shadow=False,#是否為線框添加陰影
fancybox=True)#線框圓角處理參數
plt.show()
效果如圖所示
③ Python如何運用matplotlib庫繪制3D圖形
3D圖形在數據分析、數據建模、圖形和圖像處理等領域中都有著廣泛的應用,下面將給大家介紹一下如何在Python中使用 matplotlib進行3D圖形的繪制,包括3D散點、3D表面、3D輪廓、3D直線(曲線)以及3D文字等的繪制。
准備工作:
python中繪制3D圖形,依舊使用常用的繪圖模塊matplotlib,但需要安裝mpl_toolkits工具包,安裝方法如下:windows命令行進入到python安裝目錄下的Scripts文件夾下,執行: pip install --upgrade matplotlib即可;Linux環境下直接執行該命令。
安裝好這個模塊後,即可調用mpl_tookits下的mplot3d類進行3D圖形的繪制。
下面以實例進行說明。
1、3D表面形狀的繪制
這段代碼是繪制一個3D的橢球表面,結果如下:
2、3D直線(曲線)的繪制
這段代碼用於繪制一個螺旋狀3D曲線,結果如下:
3、繪制3D輪廓
繪制結果如下:
相關推薦:《Python視頻教程》
4、繪制3D直方圖
繪制結果如下:
5、繪制3D網狀線
繪制結果如下:
6、繪制3D三角面片圖
繪制結果如下:
7、繪制3D散點圖
繪制結果如下:
④ 如何使用python的matplotlib畫正弦函數圖像
使用python的matplotlib畫正弦函數圖像,還要用到numpy庫,代碼如下9行所示:
import numpy as np;
from matplotlib import pyplot as plt;
fig = plt.figure();
ax2= fig.add_subplot(111);
x=np.arange(0,100)/10;
y=np.sin(x);
ax2.plot(x,y);
plt.savefig('sine.png');
plt.show();
⑤ Python實操:手把手教你用Matplotlib把數據畫出來
作者:邁克爾·貝耶勒(Michael Beyeler)
如需轉載請聯系華章 科技
如果已安裝Anaconda Python版本,就已經安裝好了可以使用的 Matplotlib。否則,可能要訪問官網並從中獲取安裝說明:
http://matplotlib.org
正如使用np作為 NumPy 的縮寫,我們將使用一些標準的縮寫來表示 Matplotlib 的引入:
在本書中,plt介面會被頻繁使用。
讓我們創建第一個繪圖。
假設想要畫出正弦函數sin(x)的線性圖。得到函數在x坐標軸上0≤x<10內所有點的值。我們將使用 NumPy 中的 linspace 函數來在x坐標軸上創建一個從0到10的線性空間,以及100個采樣點:
可以使用 NumPy 中的sin函數得到所有x點的值,並通過調用plt中的plot函數把結果畫出來:
你親自嘗試了嗎?發生了什麼嗎?有沒有什麼東西出現?
實際情況是,取決於你在哪裡運行腳本,可能無法看到任何東西。有下面幾種可能性:
1. 從.py腳本中繪圖
如果從一個腳本中運行 Matplotlib,需要加上下面的這行調用:
在腳本末尾調用這個函數,你的繪圖就會出現!
2. 從 IPython shell 中繪圖
這實際上是互動式地執行Matplotlib最方便的方式。為了讓繪圖出現,需要在啟動 IPython 後使用所謂的%matplotlib魔法命令。
接下來,無須每次調用plt.show()函數,所有的繪圖將會自動出現。
3. 從 Jupyter Notebook 中繪圖
如果你是從基於瀏覽器的 Jupyter Notebook 中看這段代碼,需要使用同樣的%matplotlib魔法命令。然而,也可以直接在notebook中嵌入圖形,這會有兩種輸出選項:
在本書中,將會使用inline選項:
現在再次嘗試一下:
上面的命令會得到下面的繪圖輸出結果:
如果想要把繪圖保存下來留作以後使用,可以直接在 IPython 或者 Jupyter Notebook 使用下面的命令保存:
僅需要確保你使用了支持的文件後綴,比如.jpg、.png、.tif、.svg、.eps或者.pdf。
作為本章最後一個測試,讓我們對外部數據集進行可視化,比如scikit-learn中的數字數據集。
為此,需要三個可視化工具:
那麼開始引入這些包吧:
第一步是載入實際數據:
如果沒記錯的話,digits應該有兩個不同的數據域:data域包含了真正的圖像數據,target域包含了圖像的標簽。相對於相信我們的記憶,我們還是應該對digits稍加 探索 。輸入它的名字,添加一個點號,然後按Tab鍵:digits.<TAB>,這個操作將向我們展示digits也包含了一些其他的域,比如一個名為images的域。images和data這兩個域,似乎簡單從形狀上就可以區分。
兩種情況中,第一維對應的都是數據集中的圖像數量。然而,data中所有像素都在一個大的向量中排列,而images保留了各個圖像8×8的空間排列。
因此,如果想要繪制出一副單獨的圖像,使用images將更加合適。首先,使用NumPy的數組切片從數據集中獲取一幅圖像:
這里是從1797個元素的數組中獲取了它的第一行數據,這行數據對應的是8×8=64個像素。下面就可以使用plt中的imshow函數來繪制這幅圖像:
上面的命令得到下面的輸出:
此外,這里也使用cmap參數指定了一個顏色映射。默認情況下,Matplotlib 使用MATLAB默認的顏色映射jet。然而,在灰度圖像的情況下,gray顏色映射更有效。
最後,可以使用plt的subplot函數繪制全部數字的樣例。subplot函數與MATLAB中的函數一樣,需要指定行數、列數以及當前的子繪圖索引(從1開始計算)。我們將使用for 循環在數據集中迭代出前十張圖像,每張圖像都分配到一個單獨的子繪圖中。
這會得到下面的輸出結果:
關於作者:Michael Beyeler,華盛頓大學神經工程和數據科學專業的博士後,主攻仿生視覺計算模型,用以為盲人植入人工視網膜(仿生眼睛),改善盲人的視覺體驗。 他的工作屬於神經科學、計算機工程、計算機視覺和機器學習的交叉領域。同時他也是多個開源項目的積極貢獻者。
本文摘編自《機器學習:使用OpenCV和Python進行智能圖像處理》,經出版方授權發布。
⑥ python matplotlib模塊 如何畫兩張圖出來
python matplotlib模塊 如何畫兩張圖出來的方法:
代碼如下所示:
import numpy as np
import matplotlib.pyplot as plt
#創建自變數數組
x= np.linspace(0,2*np.pi,500)
#創建函數值數組
y1 = np.sin(x)
y2 = np.cos(x)
y3 = np.sin(x*x)
#創建圖形
plt.figure(1)
'''
意思是在一個2行2列共4個子圖的圖中,定位第1個圖來進行操作(畫圖)。
最後面那個1表示第1個子圖。那個數字的變化來定位不同的子圖
'''
#第一行第一列圖形
ax1 = plt.subplot(2,2,1)
#第一行第二列圖形
ax2 = plt.subplot(2,2,2)
#第二行
ax3 = plt.subplot(2,1,2)
#選擇ax1
plt.sca(ax1)
#繪制紅色曲線
plt.plot(x,y1,color='red')
#限制y坐標軸范圍
plt.ylim(-1.2,1.2)
#選擇ax2
plt.sca(ax2)
#繪制藍色曲線
plt.plot(x,y2,'b--')
plt.ylim(-1.2,1.2)
#選擇ax3
plt.sca(ax3)
plt.plot(x,y3,'g--')
plt.ylim(-1.2,1.2)
plt.show()
附上效果圖。
⑦ python畫圖要用圖形庫嗎
要的。例如turtle庫就是用海龜畫圖的庫,用之前要import。
⑧ Python Matplotlib畫圖
主要用於作圖、可視化問題
pip install matplotlib
導入模塊 pyplot 和 pylab ,可以參考下面鏈接觀察兩者區別:
https://www.cnblogs.com/Shoesy/p/6673947.html
(說白了就是pylay=pyplot+numpy)
輸入這三行解決
主要使用 plot() 來展示,裡面前兩個參數代表 x , y 坐標(注意x,y數量要一樣),第三個參數可以用來設置散點圖( 'o' )或者顏色、線條形式等各種樣式,並且第三個參數可以同時傳入多個,比如要紅色的散點圖就: Ɔr'
(1)顏色樣式:
(2)線條樣式:
(3)點的樣式:
(4)坐標區間:
或者分別設置x、y的區間:
註:
設置點的樣式時默認就是散點圖,以及同類樣式只能設置一個(比如不能設置兩種顏色),並且還可以把多個圖集合在一起展示,那就多 plot 幾個,plot就相當於一個畫布,每plot一個就相當於在上面畫一張圖,再弄就繼續在上面畫
主要用 hist() 來顯示,實現方式很簡單,把一組數據放入括弧里就行了,例如隨機生成一堆正態分布的數,然後直方圖顯示:
其中如果要設置直方圖格式(寬度、上下限、是否要輪廓)可以這樣:
註:
直方圖和折線圖這些不太一樣,折線圖是傳入兩個等長數據,然後每個x、y坐標一一對應展示出來。而直方圖是:第一個參數代表你傳入的所有數據,第二個參數代表你傳入的x軸范圍,然後直方圖會將第一個參數里傳入的數據一個個計算在某個范圍內含有的數據量,因此傳入的兩個參數數據不一定要等長,例如下面的例子:
結果如圖:
可以看出數據被自動分配到對應的范圍內上了
使用 subplot(row, col, area) :三個參數分別是行數、列數和區域,比如要將原圖分成2行2列(切成4份),然後要左下角那個圖就:
如果想4個圖都顯示就4個 subplot ,分別1、2、3、4就行了,然後在各圖的subplot之後寫的都是每個圖的內容,現在我們試試弄一個2行,第一行兩列的圖片(想像下滑鼠的樣子),而且分別是不同的內容:
註:
labels 、 sizes 、 colors 和 explode 的長度都要一樣
1.導入3D圖相關模塊:
2.將畫圖板加到3D模塊里,然後加入數據即可:
3D散點圖舉例:
通過 imread() 讀取,舉例:
https://blog.csdn.net/qq_34859482/article/details/80617391
⑨ python matplotlib怎麼用
使用python的包matplotlib來畫圖
瀏覽:255
|
更新:
2015-10-24 22:10
1
2
3
4
5
6
7
分步閱讀
python中的matplotlib可以很快的幫助我們作出圖,
為此我們給出matplotlib的安裝步驟和一個小例子來展示其功能
工具/原料
python3.4
numpy包
matplotlib包
依賴包:pyparsing、dateutil、scipy
方法/步驟
python安裝(之前寫過一篇關於python的安裝,這里不重復介紹)
(1) 如何下載?網路---> Python官網
(2) 版本:python-3.4.3.amd64 exe文件直接點哦
(3) 目錄:D:\Python34
為python配置了環境變數:D:\Python34\Scripts;D:\Python34
(4) 命令行輸入:python 有反應表示成功
說明:matplotlib還沒有匹配python3.5的版本,我的電腦為64位
0Python安裝學習指南
軟體包下載:
因為涉及到眾多包的下載,以及其中的版本和電腦位數問題特介紹如下( 注意加粗的字體):
(1) numpy numpy-1.10.1+mkl-cp34-none-win_amd64.whl
(2) matplotlib matplotlib-1.4.3.win-amd64-py3.4b/matplotlib-1.4.3/windows/
(3) 依賴包:pyparsing、dateutil、scipy
聲明:以上軟體地址可自行網路搜索
附註:圖一為matplotlib 、圖二為numpy 下載界面的選擇
軟體包numpy的安裝:
1 命令行輸入【完整的路徑=numpy 在你電腦的絕對路徑】
pip install 完整的路徑\numpy -1.10.1+mkl-cp34-none-win_amd64.
2 驗證:python編輯下 python>>
from numpy import *
安裝matplotlib:
matplotlib-1.4.3.win-amd64-py3.4
因為下載的是exe文件,點擊一路執行即可
依賴包的安裝:
在命令行里逐行輸入如下命令:軟體包的絕對路徑
1 pip install 絕對路徑\pyparsing-2.0.3-py3-none-any.whl
2 pip install 絕對路徑\python_dateutil-2.4.2-py2.py3-none-any.whl
3 pip install 絕對路徑\matplotlib依賴\scipy-0.16.0-cp34-none-win_amd64.whl
驗證是否安裝成功:
1 在python編輯狀態下導入安裝的包:
import matplotlib
import numpy
import scipy
import pyparsing
import matplotlib.pyplot as plt
2 如果缺少six
在安裝完畢scipy之後把../Python34/Lib/site-packages/scipy/lib中的six.py six.pyc six.pyo三個文件拷貝到.../Python34/Lib/site-packages
案例1:
import matplotlib.pyplot as plt
x = [0, 1, 2, 3, 4, 5]
y = [0.1, 0.2, 0.2, 0.3, 0.2, 0.1]
y2 = [0.2, 0.2, 0.3, 0.2, 0.3, 0]
plt.plot(x, y, 'b', x, y2, 'g')
plt.show()
案例2:
import matplotlib.pyplot as plt
import math
x=[]
y=[]
num=0.0
while num < math.pi * 4:
y.append(math.sin(num))
x.append(num)
num += 0.1
plt.plot(x, y, 'b')
plt.show()
如果
⑩ python中matplotlib怎麼畫圖
首先,你要先安裝matplotlib、numpy庫。可以使用pip進行庫的安裝。
分享一段我寫的代碼,是非常簡單、基礎的,你有興趣可以看看,復制過去練習練習,有什麼不懂可以問我。
import numpy as np
import pylab as plt
plt.figure(1)
plt.figure(2)
ax1 = plt.subplot(211)
ax2 = plt.subplot(212)
x = np.linspace(0, 3, 100)
for i in xrange(5):
plt.figure(1)
plt.plot(x, np.exp(i * x / 3))
plt.sca(ax1)
plt.plot(x, np.sin(i * x ))
plt.sca(ax2)
plt.plot(x, np.cos(i*x))
plt.show()
效果圖:
請採納,謝謝!