国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

【數(shù)據(jù)科學(xué)系統(tǒng)學(xué)習(xí)】Python # 數(shù)據(jù)分析基本操作[三] matplotlib

BDEEFE / 866人閱讀

摘要:有一些表示常見圖形的對象稱為塊,完整的集合位于。中的繪圖函數(shù)在中,有行標(biāo)簽列標(biāo)簽分組信息。密度圖通過計算可能會產(chǎn)生觀測數(shù)據(jù)的連續(xù)概率分布的估計而產(chǎn)生的。在探索式數(shù)據(jù)分析工作中,同時觀察一組變量的散布圖是很有意義的。

我們在上一篇介紹了 pandas,本篇介紹 matplotlib。


繪圖和可視化

一個用于創(chuàng)建出版質(zhì)量圖表的桌面繪圖包。

Matplotlib API入門

Figure 和 Subplot


matplotlib的圖像都位于Figure對象中。

帶有三個subplotFigure

這些由fig.add_subplot所返回的對象是AxesSubplot對象,直接調(diào)用它們的實例方法就可以在其它空著的格子里畫圖了。

這時發(fā)出一條繪圖命令,matplotlib就會在最后一個用過的subplot上進(jìn)行繪制(如果沒有會創(chuàng)建一個):

K--:一個線型選項,用于告訴matplotlib繪制黑色虛線圖。


依次畫出虛線、直方圖、散點圖。

根據(jù)特定布局創(chuàng)建Figuresubplot的簡便方法:plt.subplots, 它可以創(chuàng)建一個新的Figure,并返回一個含有已創(chuàng)建的subplot對象的NumPy數(shù)組:

可以對 axes數(shù)組進(jìn)行索引,就像是一個二維數(shù)組一樣:

還可以通過sharexsharey指定subplot應(yīng)該具有相同的X軸或Y軸(刻度),在比較相同范圍的數(shù)據(jù)時用,否則matplotlib會自動縮放各圖表的界限。


調(diào)整subplot周圍的間距


默認(rèn)情況下,matplotlib會在subplot外圍留下一定的邊距,在subplot之間留下一定的間距。間距跟圖像的高度和寬度有關(guān)。

利用Figuresubplots_adjust方法修改間距。

下面的例子間距收縮到 0:

軸標(biāo)簽重疊了,matplotlib不會檢查標(biāo)簽是否重疊,這時要自己設(shè)定刻度位置和刻度標(biāo)簽。

可以在matplotlib的文檔中找到各種圖表類型。


顏色、標(biāo)記和線型


完整的linestyle列表參見plot的文檔。

ax.plot(x, y, "g--")  #根據(jù)x, y繪制綠色虛線
ax.plot(x, y, linestyle="--", color="g")   #更明確的方式,和上面一樣的效果

要使用其他任意顏色可以通過指定其 RGB 值的形式(如 #CECECE)

matplotlib創(chuàng)建的是連續(xù)的線型圖,即點與點之間插值,非實際數(shù)據(jù)點默認(rèn)是按線性方式插值的,可以通過drawstyle選項修改:


線型圖可以加上一些標(biāo)記,以強(qiáng)調(diào)實際的數(shù)據(jù)點:

標(biāo)記類型和線型必須放在顏色后面。

簡化的寫法:


刻度、標(biāo)簽和圖例


過程型的pyplot接口

交互式使用,有xlim, xticks, xticklabels之類的方法,它們分別控制圖表的范圍,刻度位置,刻度標(biāo)簽等。
調(diào)用時不帶參數(shù),如plt.xlim()返回當(dāng)前的X軸繪圖范圍。
調(diào)用時帶參數(shù),如plt.xlim([0, 10])會將X軸的范圍設(shè)置為 0 到 10。

更為面向?qū)ο蟮脑?b>matplotlib API。


設(shè)置標(biāo)題、軸標(biāo)簽、刻度以及刻度標(biāo)簽


繪制一段隨機(jī)漫步:

修改X軸刻度:set_xticks(數(shù)值),set_xticklabels(其他任何的值用作刻度)。


添加圖例(legend)


添加圖例的方式:添加subplot的時候傳入label參數(shù)。

調(diào)用 ax.legend()plt.legend() 來自動創(chuàng)建圖例。

loc告訴matplotlib要將圖例放在哪,best選擇最不礙事的位置。

去除圖例:不傳入label或傳入label="_nolegend_"(注意有兩個下劃線)。


注釋以及在Subplot上繪圖


注釋:通過 text, arrow, annotate 等函數(shù)進(jìn)行添加。


matplotlib有一些表示常見圖形的對象:稱為塊(patch),完整的集合位于matplotlib.patches

創(chuàng)建一個塊對象shp,然后通過ax.add_patch(shp)將其添加到subplot中:

圖表對象:它們其實就是由塊組裝而成的。


將圖表保存到文件


利用 plt.savefig 可以將當(dāng)前圖表保存到文件。(該方法相當(dāng)于 Figure 對象的實例方法 savefig)。

如要將圖表保存為 SVG 文件:

兩個重要的選項:

dpi:控制“每英寸點數(shù)”分辨率;

bbox_inches:可以剪除當(dāng)前圖表周圍的空白部分。

得到一張帶有最小白邊且分辨率為 400DPI 的 PNG 圖片:

savefig并非一定要寫入磁盤,也可寫入任何文件型的對象,比如StringIO


matplotlib配置


操作matplotlib配置系統(tǒng)的方式:Python 編程方式,即利用rc方法。

如將全局的圖像默認(rèn)大小設(shè)置為 10 * 10,執(zhí)行:

plt.rc("figure", figsize=(10, 10))

rc的第一個參數(shù):是希望自定義的對象(如"figure", "axes", "xtick", "ytick", "grid", "legend"),這里是figure

可以跟一系列的關(guān)鍵字參數(shù),將它們寫成一個字典:

全部的自定義選項:查閱matplotlib的配置文件matplotlibrc(位于 matplotlib/mpl-data 目錄中)。對該文件進(jìn)行自定義,并將其放在目錄中,則每次使用matplotlib時就會加載該文件。


pandas中的繪圖函數(shù)

pandas中,有行標(biāo)簽、列標(biāo)簽、分組信息。

要制作一張完整的圖表,原本需要一大堆的matplotlib代碼,現(xiàn)在只需一兩條簡潔的語句就可以了。pandas有許多能夠利用DataFrame對象數(shù)據(jù)組織特點來創(chuàng)建標(biāo)準(zhǔn)圖表的高級繪圖方法。


線型圖


SeriesDataFrame都有一個用于生成各類圖表的plot方法,默認(rèn)情況下它們都生成線型圖。

DataFrameplot方法會在一個 subplot 中為各列繪制一條線,并自動創(chuàng)建圖例。


柱狀圖


垂直柱狀圖:Kind="bar"
水平柱狀圖:Kind="barh"


設(shè)置 stacked=True 即可為DataFrame生成堆積柱狀圖:


柱狀圖利用value_counts圖形化顯示Series中各值的出現(xiàn)頻率,如:


直方圖和密度圖


直方圖(histogram):是一種可以對值頻率進(jìn)行離散化顯示的柱狀圖。

密度圖:通過計算“可能會產(chǎn)生觀測數(shù)據(jù)的連續(xù)概率分布的估計”而產(chǎn)生的。

一般的過程是將該分布近似為一組核(如正態(tài)(高斯)分布之類的較為簡單的分布)。

密度圖也被稱作 KDE 圖(Kernel Density Estimate 核密度估計)。

直方圖和密度圖常被畫在一起,直方圖以規(guī)格化形式給出(以便給出面元密度),再在其上繪制核密度估計。


由兩個不同的標(biāo)準(zhǔn)正態(tài)分布組成的雙峰分布:

最后一行代碼繪制的密度圖的最終結(jié)果:


散布圖


散布圖(scatter plot):是觀察兩個一維數(shù)據(jù)序列之間關(guān)系的有效手段。

matplotlibscatter方法是繪制散布圖的主要方法。

在探索式數(shù)據(jù)分析工作中,同時觀察一組變量的散布圖是很有意義的。也被稱為散布圖矩陣(scatter plot matrix)。

pandas提供了一個能從DataFrame創(chuàng)建散布圖矩陣的 scatter_matrix 函數(shù),它還支持在對角線上放置各變量的直方圖或密度圖。


不足之處,歡迎指正。

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/44742.html

相關(guān)文章

  • 數(shù)據(jù)學(xué)系統(tǒng)學(xué)習(xí)】機(jī)器學(xué)習(xí)算法 # 西瓜書學(xué)習(xí)記錄 [3] Logistic 回歸實踐

    摘要:根據(jù)錯誤率決定是否回退到訓(xùn)練階段,通過改變迭代的次數(shù)和步長等參數(shù)來得到更好的回歸系數(shù)。使用回歸方法進(jìn)行分類所需做的是把測試集上每個特征向量乘以最優(yōu)化方法得來的回歸系數(shù),再將該乘積結(jié)果求和,最后輸入到函數(shù)即可。 本篇內(nèi)容為《機(jī)器學(xué)習(xí)實戰(zhàn)》第 5 章 Logistic 回歸程序清單。 書中所用代碼為 python2,下面給出的程序清單是在 python3 中實踐改過的代碼,希望對你有幫助。...

    MSchumi 評論0 收藏0
  • 數(shù)據(jù)學(xué)系統(tǒng)學(xué)習(xí)Python # 編程基礎(chǔ)[]

    摘要:新的稱為子類,而被繼承的稱為基類父類或超類。繼承最大的好處是子類獲得了父類的全部功能。在繼承關(guān)系中,如果一個實例的數(shù)據(jù)類型是某個子類,那它的數(shù)據(jù)類型也可以被看做是父類。 在上一篇中我們介紹了模塊和數(shù)據(jù)結(jié)構(gòu),這一篇將介紹面向?qū)ο缶幊獭? 面向?qū)ο缶幊?面向?qū)ο缶幊獭狾bject Oriented Programming,簡稱 OOP,是一種程序設(shè)計思想。OOP 把對象作為程序的基本單元...

    molyzzx 評論0 收藏0
  • 15個Python庫,讓你學(xué)習(xí)數(shù)據(jù)科學(xué)更輕松

    摘要:在本節(jié)中,我們將看到一些最流行和最常用的庫,用于機(jī)器學(xué)習(xí)和深度學(xué)習(xí)是用于數(shù)據(jù)挖掘,分析和機(jī)器學(xué)習(xí)的最流行的庫。愿碼提示網(wǎng)址是一個基于的框架,用于使用多個或進(jìn)行有效的機(jī)器學(xué)習(xí)和深度學(xué)習(xí)。 showImg(https://segmentfault.com/img/remote/1460000018961827?w=999&h=562); 來源 | 愿碼(ChainDesk.CN)內(nèi)容編輯...

    W4n9Hu1 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<