最近2018中文字幕在日韩欧美国产成人片_国产日韩精品一区二区在线_在线观看成年美女黄网色视频_国产精品一区三区五区_国产精彩刺激乱对白_看黄色黄大色黄片免费_人人超碰自拍cao_国产高清av在线_亚洲精品电影av_日韩美女尤物视频网站

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
python實(shí)現(xiàn)函數(shù)繪圖的簡(jiǎn)單介紹

Python實(shí)操:手把手教你用Matplotlib把數(shù)據(jù)畫出來(lái)

作者:邁克爾·貝耶勒(Michael Beyeler)

創(chuàng)新互聯(lián)公司堅(jiān)持“要么做到,要么別承諾”的工作理念,服務(wù)領(lǐng)域包括:網(wǎng)站設(shè)計(jì)制作、網(wǎng)站設(shè)計(jì)、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣等服務(wù),滿足客戶于互聯(lián)網(wǎng)時(shí)代的晉源網(wǎng)站設(shè)計(jì)、移動(dòng)媒體設(shè)計(jì)的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡(luò)建設(shè)合作伙伴!

如需轉(zhuǎn)載請(qǐng)聯(lián)系華章 科技

如果已安裝Anaconda Python版本,就已經(jīng)安裝好了可以使用的 Matplotlib。否則,可能要訪問官網(wǎng)并從中獲取安裝說(shuō)明:

正如使用np作為 NumPy 的縮寫,我們將使用一些標(biāo)準(zhǔn)的縮寫來(lái)表示 Matplotlib 的引入:

在本書中,plt接口會(huì)被頻繁使用。

讓我們創(chuàng)建第一個(gè)繪圖。

假設(shè)想要畫出正弦函數(shù)sin(x)的線性圖。得到函數(shù)在x坐標(biāo)軸上0≤x<10內(nèi)所有點(diǎn)的值。我們將使用 NumPy 中的 linspace 函數(shù)來(lái)在x坐標(biāo)軸上創(chuàng)建一個(gè)從0到10的線性空間,以及100個(gè)采樣點(diǎn):

可以使用 NumPy 中的sin函數(shù)得到所有x點(diǎn)的值,并通過調(diào)用plt中的plot函數(shù)把結(jié)果畫出來(lái):

你親自嘗試了嗎?發(fā)生了什么嗎?有沒有什么東西出現(xiàn)?

實(shí)際情況是,取決于你在哪里運(yùn)行腳本,可能無(wú)法看到任何東西。有下面幾種可能性:

1. 從.py腳本中繪圖

如果從一個(gè)腳本中運(yùn)行 Matplotlib,需要加上下面的這行調(diào)用:

在腳本末尾調(diào)用這個(gè)函數(shù),你的繪圖就會(huì)出現(xiàn)!

2. 從 IPython shell 中繪圖

這實(shí)際上是交互式地執(zhí)行Matplotlib最方便的方式。為了讓繪圖出現(xiàn),需要在啟動(dòng) IPython 后使用所謂的%matplotlib魔法命令。

接下來(lái),無(wú)須每次調(diào)用plt.show()函數(shù),所有的繪圖將會(huì)自動(dòng)出現(xiàn)。

3. 從 Jupyter Notebook 中繪圖

如果你是從基于瀏覽器的 Jupyter Notebook 中看這段代碼,需要使用同樣的%matplotlib魔法命令。然而,也可以直接在notebook中嵌入圖形,這會(huì)有兩種輸出選項(xiàng):

在本書中,將會(huì)使用inline選項(xiàng):

現(xiàn)在再次嘗試一下:

上面的命令會(huì)得到下面的繪圖輸出結(jié)果:

如果想要把繪圖保存下來(lái)留作以后使用,可以直接在 IPython 或者 Jupyter Notebook 使用下面的命令保存:

僅需要確保你使用了支持的文件后綴,比如.jpg、.png、.tif、.svg、.eps或者.pdf。

作為本章最后一個(gè)測(cè)試,讓我們對(duì)外部數(shù)據(jù)集進(jìn)行可視化,比如scikit-learn中的數(shù)字?jǐn)?shù)據(jù)集。

為此,需要三個(gè)可視化工具:

那么開始引入這些包吧:

第一步是載入實(shí)際數(shù)據(jù):

如果沒記錯(cuò)的話,digits應(yīng)該有兩個(gè)不同的數(shù)據(jù)域:data域包含了真正的圖像數(shù)據(jù),target域包含了圖像的標(biāo)簽。相對(duì)于相信我們的記憶,我們還是應(yīng)該對(duì)digits稍加 探索 。輸入它的名字,添加一個(gè)點(diǎn)號(hào),然后按Tab鍵:digits.TAB,這個(gè)操作將向我們展示digits也包含了一些其他的域,比如一個(gè)名為images的域。images和data這兩個(gè)域,似乎簡(jiǎn)單從形狀上就可以區(qū)分。

兩種情況中,第一維對(duì)應(yīng)的都是數(shù)據(jù)集中的圖像數(shù)量。然而,data中所有像素都在一個(gè)大的向量中排列,而images保留了各個(gè)圖像8×8的空間排列。

因此,如果想要繪制出一副單獨(dú)的圖像,使用images將更加合適。首先,使用NumPy的數(shù)組切片從數(shù)據(jù)集中獲取一幅圖像:

這里是從1797個(gè)元素的數(shù)組中獲取了它的第一行數(shù)據(jù),這行數(shù)據(jù)對(duì)應(yīng)的是8×8=64個(gè)像素。下面就可以使用plt中的imshow函數(shù)來(lái)繪制這幅圖像:

上面的命令得到下面的輸出:

此外,這里也使用cmap參數(shù)指定了一個(gè)顏色映射。默認(rèn)情況下,Matplotlib 使用MATLAB默認(rèn)的顏色映射jet。然而,在灰度圖像的情況下,gray顏色映射更有效。

最后,可以使用plt的subplot函數(shù)繪制全部數(shù)字的樣例。subplot函數(shù)與MATLAB中的函數(shù)一樣,需要指定行數(shù)、列數(shù)以及當(dāng)前的子繪圖索引(從1開始計(jì)算)。我們將使用for 循環(huán)在數(shù)據(jù)集中迭代出前十張圖像,每張圖像都分配到一個(gè)單獨(dú)的子繪圖中。

這會(huì)得到下面的輸出結(jié)果:

關(guān)于作者:Michael Beyeler,華盛頓大學(xué)神經(jīng)工程和數(shù)據(jù)科學(xué)專業(yè)的博士后,主攻仿生視覺計(jì)算模型,用以為盲人植入人工視網(wǎng)膜(仿生眼睛),改善盲人的視覺體驗(yàn)。 他的工作屬于神經(jīng)科學(xué)、計(jì)算機(jī)工程、計(jì)算機(jī)視覺和機(jī)器學(xué)習(xí)的交叉領(lǐng)域。同時(shí)他也是多個(gè)開源項(xiàng)目的積極貢獻(xiàn)者。

本文摘編自《機(jī)器學(xué)習(xí):使用OpenCV和Python進(jìn)行智能圖像處理》,經(jīng)出版方授權(quán)發(fā)布。

python之pyplot

1、 定義x和y,畫圖展示,保存圖片

其中dpi參數(shù)指定圖像的分辨率為120

2、 優(yōu)化繪圖線條風(fēng)格

線條顏色color

線條標(biāo)記marker

線條風(fēng)格linestyle

3、 坐標(biāo)軸的控制

坐標(biāo)軸范圍和標(biāo)題

坐標(biāo)圖上標(biāo)記

坐標(biāo)間隔設(shè)定

函數(shù)plt.xticks()和plt.xticks()用來(lái)實(shí)現(xiàn)對(duì)x軸和y軸坐標(biāo)間隔(也就是軸記號(hào))的設(shè)定。用法上,函數(shù)的輸入是兩個(gè)列表,第一個(gè)表示取值,第二個(gè)表示標(biāo)記。當(dāng)然如果你的標(biāo)記就是取值本身,則第二個(gè)列表可以忽略

多圖與子圖

figure() 函數(shù)可以幫助我們同時(shí)處理生成多個(gè)圖,而subplot()函數(shù)則用來(lái)實(shí)現(xiàn),在一個(gè)大圖中,出現(xiàn)多個(gè)小的子圖。需要注意的是, figure() 中的參數(shù)為圖片序號(hào),一般是按序增加的,這里面還涉及一個(gè)當(dāng)前圖的概念,其中 subplot() 的參數(shù)有3個(gè),分別為行數(shù)、列數(shù)、以及子圖序號(hào)。比如 subplot(1,2,1) 表示這是一個(gè)1行,2列布局的圖(兩個(gè)子圖,在同一行,分居左右),其中,當(dāng)前處理的子圖是第一個(gè)圖(也就是左圖)。

這樣,我們就用一個(gè)腳本畫了兩張圖fig.1和fig.2。其中,fig.1包含了分居左右的兩個(gè)子圖,分別是y1和y3的曲線;fig.2是一張整圖,畫的是y2曲線。

如果想要某個(gè)子圖占據(jù)整行或者整列,可以采用下面

第三個(gè)圖,實(shí)際上相當(dāng)于將前面的兩個(gè)小的子圖看作是一個(gè)整圖

python繪圖篇

1,xlable,ylable設(shè)置x,y軸的標(biāo)題文字。

2,title設(shè)置標(biāo)題。

3,xlim,ylim設(shè)置x,y軸顯示范圍。

plt.show()顯示繪圖窗口,通常情況下,show()會(huì)阻礙程序運(yùn)行,帶-wthread等參數(shù)的環(huán)境下,窗口不會(huì)關(guān)閉。

plt.saveFig()保存圖像。

面向?qū)ο罄L圖

1,當(dāng)前圖表和子圖可以用gcf(),gca()獲得。

subplot()繪制包含多個(gè)圖表的子圖。

configure subplots,可調(diào)節(jié)子圖與圖表邊框距離。

可以通過修改配置文件更改對(duì)象屬性。

圖標(biāo)顯示中文

1,在程序中直接指定字體。

2, 在程序開始修改配置字典reParams.

3,修改配置文件。

Artist對(duì)象

1,圖標(biāo)的繪制領(lǐng)域。

2,如何在FigureCanvas對(duì)象上繪圖。

3,如何使用Renderer在FigureCanvas對(duì)象上繪圖。

FigureCanvas和Render處理底層圖像操作,Artist處理高層結(jié)構(gòu)。

分為簡(jiǎn)單對(duì)象和容器對(duì)象,簡(jiǎn)單的Aritist是標(biāo)準(zhǔn)的繪圖元件,例如Line 2D,Rectangle,Text,AxesImage等,而容器類型包含許多簡(jiǎn)單的的 Aritist對(duì)象,使他們構(gòu)成一個(gè)整體,例如Axis,Axes,Figure等。

直接創(chuàng)建Artist對(duì)象進(jìn)項(xiàng)繪圖操作步奏:

1,創(chuàng)建Figure對(duì)象(通過figure()函數(shù),會(huì)進(jìn)行許多初始化操作,不建議直接創(chuàng)建。)

2,為Figure對(duì)象創(chuàng)建一個(gè)或多個(gè)Axes對(duì)象。

3,調(diào)用Axes對(duì)象的方法創(chuàng)建各類簡(jiǎn)單的Artist對(duì)象。

Figure容器

如何找到指定的Artist對(duì)象。

1,可調(diào)用add_subplot()和add_axes()方法向圖表添加子圖。

2,可使用for循環(huán)添加?xùn)鸥瘛?/p>

3,可通過transform修改坐標(biāo)原點(diǎn)。

Axes容器

1,patch修改背景。

2,包含坐標(biāo)軸,坐標(biāo)網(wǎng)格,刻度標(biāo)簽,坐標(biāo)軸標(biāo)題等內(nèi)容。

3,get_ticklabels(),,get-ticklines獲得刻度標(biāo)簽和刻度線。

1,可對(duì)曲線進(jìn)行插值。

2,fill_between()繪制交點(diǎn)。

3,坐標(biāo)變換。

4,繪制陰影。

5,添加注釋。

1,繪制直方圖的函數(shù)是

2,箱線圖(Boxplot)也稱箱須圖(Box-whisker Plot),是利用數(shù)據(jù)中的五個(gè)統(tǒng)計(jì)量:最小值、第一四分位

數(shù)、中位數(shù)、第三四分位數(shù)與最大值來(lái)描述數(shù)據(jù)的一種方法,它可以粗略地看出數(shù)據(jù)是否具有對(duì)稱性以及分

布的分散程度等信息,特別可以用于對(duì)幾個(gè)樣本的比較。

3,餅圖就是把一個(gè)圓盤按所需表達(dá)變量的觀察數(shù)劃分為若干份,每一份的角度(即面積)等價(jià)于每個(gè)觀察

值的大小。

4,散點(diǎn)圖

5,QQ圖

低層繪圖函數(shù)

類似于barplot(),dotchart()和plot()這樣的函數(shù)采用低層的繪圖函數(shù)來(lái)畫線和點(diǎn),來(lái)表達(dá)它們?cè)陧?yè)面上放置的位置以及其他各種特征。

在這一節(jié)中,我們會(huì)描述一些低層的繪圖函數(shù),用戶也可以調(diào)用這些函數(shù)用于繪圖。首先我們先講一下R怎么描述一個(gè)頁(yè)面;然后我們講怎么在頁(yè)面上添加點(diǎn),線和文字;最后講一下怎么修改一些基本的圖形。

繪圖區(qū)域與邊界

R在繪圖時(shí),將顯示區(qū)域劃分為幾個(gè)部分。繪制區(qū)域顯示了根據(jù)數(shù)據(jù)描繪出來(lái)的圖像,在此區(qū)域內(nèi)R根據(jù)數(shù)據(jù)選擇一個(gè)坐標(biāo)系,通過顯示出來(lái)的坐標(biāo)軸可以看到R使用的坐標(biāo)系。在繪制區(qū)域之外是邊沿區(qū),從底部開始按順時(shí)針方向分別用數(shù)字1到4表示。文字和標(biāo)簽通常顯示在邊沿區(qū)域內(nèi),按照從內(nèi)到外的行數(shù)先后顯示。

添加對(duì)象

在繪制的圖像上還可以繼續(xù)添加若干對(duì)象,下面是幾個(gè)有用的函數(shù),以及對(duì)其功能的說(shuō)明。

?points(x, y, ...),添加點(diǎn)

?lines(x, y, ...),添加線段

?text(x, y, labels, ...),添加文字

?abline(a, b, ...),添加直線y=a+bx

?abline(h=y, ...),添加水平線

?abline(v=x, ...),添加垂直線

?polygon(x, y, ...),添加一個(gè)閉合的多邊形

?segments(x0, y0, x1, y1, ...),畫線段

?arrows(x0, y0, x1, y1, ...),畫箭頭

?symbols(x, y, ...),添加各種符號(hào)

?legend(x, y, legend, ...),添加圖列說(shuō)明

Python繪圖之(1)Turtle庫(kù)詳解

Turtle庫(kù)是Python語(yǔ)言中一個(gè)很流行的繪制圖像的函數(shù)庫(kù),想象一個(gè)小烏龜,在一個(gè)橫軸為x、縱軸為y的坐標(biāo)系原點(diǎn),(0,0)位置開始,它根據(jù)一組函數(shù)指令的控制,在這個(gè)平面坐標(biāo)系中移動(dòng),從而在它爬行的路徑上繪制了圖形。

畫布就是turtle為我們展開用于繪圖區(qū)域,我們可以設(shè)置它的大小和初始位置。

設(shè)置畫布大小

turtle.screensize(canvwidth=None, canvheight=None, bg=None),參數(shù)分別為畫布的寬(單位像素), 高, 背景顏色。

如:turtle.screensize(800,600, "green")

turtle.screensize() #返回默認(rèn)大小(400, 300)

turtle.setup(width=0.5, height=0.75, startx=None, starty=None),參數(shù):width, height: 輸入寬和高為整數(shù)時(shí), 表示像素; 為小數(shù)時(shí), 表示占據(jù)電腦屏幕的比例,(startx, starty): 這一坐標(biāo)表示矩形窗口左上角頂點(diǎn)的位置, 如果為空,則窗口位于屏幕中心。

如:turtle.setup(width=0.6,height=0.6)

turtle.setup(width=800,height=800, startx=100, starty=100)

2.1 畫筆的狀態(tài)

在畫布上,默認(rèn)有一個(gè)坐標(biāo)原點(diǎn)為畫布中心的坐標(biāo)軸,坐標(biāo)原點(diǎn)上有一只面朝x軸正方向小烏龜。這里我們描述小烏龜時(shí)使用了兩個(gè)詞語(yǔ):坐標(biāo)原點(diǎn)(位置),面朝x軸正方向(方向), turtle繪圖中,就是使用位置方向描述小烏龜(畫筆)的狀態(tài)。

2.2 畫筆的屬性

畫筆(畫筆的屬性,顏色、畫線的寬度等)

1) turtle.pensize():設(shè)置畫筆的寬度;

2) turtle.pencolor():沒有參數(shù)傳入,返回當(dāng)前畫筆顏色,傳入?yún)?shù)設(shè)置畫筆顏色,可以是字符串如"green", "red",也可以是RGB 3元組。

3) turtle.speed(speed):設(shè)置畫筆移動(dòng)速度,畫筆繪制的速度范圍[0,10]整數(shù),數(shù)字越大越快。

2.3 繪圖命令

操縱海龜繪圖有著許多的命令,這些命令可以劃分為3種:一種為運(yùn)動(dòng)命令,一種為畫筆控制命令,還有一種是全局控制命令。

(1) 畫筆運(yùn)動(dòng)命令

(2) 畫筆控制命令

(3) 全局控制命令

(4) 其他命令

3. 命令詳解

3.1 turtle.circle(radius, extent=None, steps=None)

描述:以給定半徑畫圓

參數(shù):

radius(半徑):半徑為正(負(fù)),表示圓心在畫筆的左邊(右邊)畫圓;

extent(弧度) (optional);

steps (optional) (做半徑為radius的圓的內(nèi)切正多邊形,多邊形邊數(shù)為steps)。

舉例:

circle(50) # 整圓;

circle(50,steps=3) # 三角形;

circle(120, 180) # 半圓

實(shí)例:

1、太陽(yáng)花

2、五角星

3、時(shí)鐘程序


名稱欄目:python實(shí)現(xiàn)函數(shù)繪圖的簡(jiǎn)單介紹
分享路徑:http://fisionsoft.com.cn/article/dopdpge.html