国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

python畫圖——matplotlib.plot 學習

2019-11-08 03:10:32
字體:
來源:轉載
供稿:網友

之前把《利用Python進行數據分析》擼了一遍,其中就有一章專門說數據可視化的,結果這兩天做數據挖掘算法實現想用Python畫個圖,發現腦袋空空如也。所以今天又專門找個時間把Python數據可視化再擼一遍,不過這次就要做個筆記了,下次老子看筆記,不啃書了!

一.模塊簡介

包:matplotlib,這是一個用于創建出版質量的桌面繪圖包,所以你看這個圖很有看老板數學教科書中的插圖的意味,如果要使這個包作用完全,最好安裝一個GUI工具包:ipython。 安裝方法就跟一般的模塊安裝方法相同,使用的方法就是把 >>>Python 改為 >>>ipython 還有一個輕量服務器進程,啟動方式是:

>>>ipython notebook

或者是 jupyter notebook 這時候就會彈出個網頁,接下來你就能在網頁上進行交互操作了。這個進程的有點就在于你能把你的操作存檔,下次可以繼續進行未完成的工作,就像是虛擬機一樣,存檔后下次開機就會直接讀取上次的信息,你就可以接著上次的頁面繼續工作了(還有一個作用就是能把你的存檔文件發給你的同事,這樣他就能直接看到你的整個操作過程)

模塊:plot,這個就是我們一直用的畫圖模塊,我們用的figure對象和subplot方法都在這里面

二.創建圖表

創建圖表的第一步是創建一個畫布,然后再建圖表。一個畫布可以存在多個圖表。 創建圖表的方法有三種: 首先引入包

import matplotlib.pyplot as pltform numpy.random import randn

直接plot方法 這個plot就是這個plt下面的一個方法,它可以直接接受一組x和y的點畫圖,就像你在學函數一樣,有了x有了y直接就可以整個函數圖像出來

plt.plot(x,y) plt.show()

將plt當做一個畫布對象,直接畫圖; 會有一個figure出現,如果沒有結束這個figure,是不能進行下一個動作; 可以將多個動作畫在同一個畫布上;

建立對象figure

fig=plt.figure() ax=fig.add_subplot(1,1,1) ax.plot(x,y)||ax.hist(x)#(畫一個直方圖) fig.show()

創建一個新的fig對象,當做一個畫布; add_subplot添加子圖,再進一步設置圖畫; 可以一個畫布上出現多個圖

直接用subplot方法

figs,axes=plt.subplots(1,1,**kwargs) axes[i].plot(x,y)||axes[i].hist(x) figs.show()

利用subplot方法同事創建一個figure新對象和axes數組 對數組的元素操作即對每幅圖操作 可以很方便的操作每幅圖(推薦)

對比上面三種方法可以知道:第一種方法就是畫圖的方法;第二種方法是先建立figure對象,再利用add_subplot的方法建立幾個子圖再用第一種方法畫圖;第三種方法最為直接和方便,直接里用plt.subplots的方法建立子圖并返回figure對象和子圖的數組。 如果是畫一個圖表練習練習的話那就用第一種方法,簡單直接粗暴,如果是要一次建好幾個圖表那就用第三種方法,還可以索引出你想用的那個圖表

三.給圖表添磚加瓦

建立了圖表,接下來就是給圖表加注釋、說明,調整橫軸大小區間等主要是通過set_*這個方法來實現的 設立坐標軸 set_xlim 設立坐標軸的最大值和最小值 set_xticks 設立坐標軸上的間隔區間 set_xticklabels 設立坐標軸上的間隔名稱 set_xlabel 設立坐標軸的名稱 設立注釋 text 設立文本注釋(可以將注釋內容定位在(x,y)坐標上) arrow 設立箭頭注釋 annotate 設立注釋內容 設立圖例 在書中說有兩種設立圖例的方法,但我就實驗出來一種

fig=plt.figure()ax=fig.add_subplot(1,1,1)ax.plot(randn(1000).cumsum(),'k--',label='one')ax.plot(randn(1000).cumsum(),'k.',label='two')ax.plot(randn(1000).cumsum(),'k',label='three')

這樣就把圖和圖例都弄出來了,但是圖例還沒有顯示出來,接下來就是顯示圖例

ax.legend(loc='best')

loc=’best’可以將圖例放在最合適的位置,你也可以設置為‘right’‘center’等 這是在學習的時候使用的圖,僅供參考 實驗用的四幅圖,比較粗糙

四.后續

這個才是剛剛開始,能畫出圖,但畫出自己想要的圖還有點困難,如果用pandans中的DataFrame和Series數據來畫圖會有更好的方法。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 宿松县| 塔河县| 无极县| 财经| 常熟市| 岳阳市| 方正县| 大化| 于田县| 辉南县| 江口县| 两当县| 柞水县| 康乐县| 正阳县| 商丘市| 内黄县| 沅江市| 临江市| 南郑县| 镇赉县| 德钦县| 南平市| 蒲江县| 平定县| 平山县| 高邮市| 且末县| 威海市| 江油市| 得荣县| 巴青县| 海口市| 津南区| 云龙县| 泽库县| 建瓯市| 贵南县| 涞源县| 孝感市| 咸阳市|