【數(shù)據(jù)可視化】Matplotlib:MATLIB 風(fēng)格與面向?qū)ο?/h1>

?? 一、Matplotlib庫相關(guān)介紹

【介紹】:Matplotlib 是建立在Numpy數(shù)組基礎(chǔ)上的多平臺數(shù)據(jù)可視化程序庫遗锣。

安裝
pip install matplotlib
兩種使用方式
  • 1、交互式圖形: %matplotlib notebook
  • 2嗤形、靜態(tài)圖形: %matplotlib inline
導(dǎo)入相關(guān)庫
import matplotlib.pyplot as plt
import numpy as np
%matplotlib inline
【第一步】:繪制正弦精偿、余弦曲線
x = np.linspace(-5,5,100)
fig = plt.figure()
plt.plot(x,np.sin(x),'-')
plt.plot(x,np.cos(x),'--')
plt.show()
output_正弦、余弦曲線
【第二步】:利用savefig將圖形保存為文件
fig.savefig('my.png')
【第三步】:利用from IPython.display import Image顯示圖形
from IPython.display import Image
Image("my.png")
output_顯示圖形
【第四步】:獲取支持的圖像格式
fig.canvas.get_supported_filetypes()
{'ps': 'Postscript',
 'eps': 'Encapsulated Postscript',
 'pdf': 'Portable Document Format',
 'pgf': 'PGF code for LaTeX',
 'png': 'Portable Network Graphics',
 'raw': 'Raw RGBA bitmap',
 'rgba': 'Raw RGBA bitmap',
 'svg': 'Scalable Vector Graphics',
 'svgz': 'Scalable Vector Graphics'}

?? 二赋兵、畫圖的兩種風(fēng)格

【第一種】:MATLIB 風(fēng)格接口
# 創(chuàng)建圖形
plt.figure()

#(行笔咽、列、子圖的編號)
plt.subplot(2,1,1)
plt.plot(x,np.sin(x))

plt.subplot(2,1,2)
plt.plot(x,np.cos(x))

【解釋】:這種風(fēng)格的重要特征是:有狀態(tài)的霹期。會持續(xù)跟蹤當前的圖形和坐標進行繪制叶组。

  • plt.gcf() :獲取當前圖形
  • plt.gca() : 獲取當前坐標軸
output_MATLIB 風(fēng)格
【第二種】:面向?qū)ο蠼涌?/h6>
# ax 是包含了兩個Axes對象的數(shù)組
fig, ax = plt.subplots(2)

# 在每個對象上調(diào)用plot()
ax[0].plot(x,np.sin(x))
ax[1].plot(x,np.cos(x))

【基本思路】:將畫圖實例化對象為ax,( ax 是包含了兩個Axes對象的數(shù)組),然后對每個對象直接調(diào)用plot()等相關(guān)函數(shù)進行繪圖历造。

output_面向?qū)ο?/div>

?? 三甩十、繪制簡易線型圖

  • figure:可以被看做是一個能夠容納各種坐標軸、圖形吭产、文字侣监、和標簽的容器
  • axes: 是一個帶標簽和刻度的矩形。
# figure:可以被看做是一個能夠容納各種坐標軸臣淤、圖形橄霉、文字、和標簽的容器
# axes: 是一個帶標簽和刻度的矩形邑蒋。
fig = plt.figure()
ax = plt.axes()
【第一步】:沒錯姓蜂,先繪制一個空白的帶標簽和刻度的容器作為繪圖的基礎(chǔ)(就像畫布那樣)。
output_畫布
【第二步】:通過不斷的調(diào)用plot可以在一個畫布上繪制多個圖形医吊。
plt.plot(x,np.sin(x))
plt.plot(x,np.cos(x))
output_繪制圖形
【第三步】:調(diào)整圖形的線條顏色與風(fēng)格
## 顏色 color參數(shù)
plt.plot(x,np.sin(x - 0), color='blue')  # 標準顏色名稱
plt.plot(x,np.sin(x - 1), color='g')     # 縮寫顏色的代碼(rgbcmyk)
plt.plot(x,np.sin(x - 2), color='0.75')  # 范圍在0-1直間的灰度值
plt.plot(x,np.sin(x - 3), color='#ff99dd') #十六進制
plt.plot(x,np.sin(x - 4), color=(1.0,0.2,0.3)) #RGB元組钱慢,范圍0-1

【補充】:Matplotlib中關(guān)于顏色的表達形式,主要有以下幾種卿堂。

  • color='blue':標準顏色名稱滩字;
  • color='g': 縮寫顏色的代碼(rgbcmyk);
  • color='0.75':范圍在0-1直間的灰度值御吞;
  • color='#ff99dd':十六進制麦箍;
  • color=(1.0,0.2,0.3):RGB元組,范圍(0,1)陶珠;
output_顏色的表達形
【第四步】: 使用 linestyle 參數(shù)調(diào)整線條風(fēng)格
plt.plot(x,x+0,linestyle='solid')
plt.plot(x,x+1,linestyle='dashed')
plt.plot(x,x+2,linestyle='dashdot')
plt.plot(x,x+3,linestyle='dotted')
output_線條風(fēng)格
【第五步】:線條風(fēng)格挟裂,簡寫形式
plt.plot(x,x+0,linestyle='-')   # 實線
plt.plot(x,x+1,linestyle='--')  # 虛線
plt.plot(x,x+2,linestyle='-.') # 點劃線
plt.plot(x,x+3,linestyle=':') # 實點線
output_線條風(fēng)格
【第六步】:(參數(shù)組合)將color 和linestyle 組合起來
plt.plot(x,x+0,'-g')  # 綠色實線
plt.plot(x,x+1,'--c') # 青色虛線
plt.plot(x,x+3,'-.k') # 黑色點劃線
plt.plot(x,x+4,':r') # 紅色點實線
output_參數(shù)組合
【第七步】:調(diào)整坐標軸的上下限
  • 方式1:兩個基礎(chǔ)方法:plt.xlim() 和 plt.ylim()
# 方式1:兩個基礎(chǔ)方法:plt.xlim()  和 plt.ylim()
plt.plot(x,np.sin(x))
plt.xlim(-1,11)
plt.ylim(-1.5,1.5)
output_參數(shù)組合
  • 方式2:plt.axis([xmin,xmax,ymin,ymax])
# 方式2:plt.axis([xmin,xmax,ymin,ymax])
plt.plot(x,np.sin(x))
plt.axis([-1,11,-1.5,1.5])
output
【第八步】:坐標軸逆序顯示,將 xlim() 或者 ylim()的參數(shù)設(shè)置為負值揍诽。
plt.plot(x,np.sin(x))
plt.xlim(10,0)
plt.ylim(1.2,-1.2)
output_坐標軸逆序
【第九步】:使用 plt.axis('tight') 按照圖形內(nèi)容诀蓉,自動縮緊坐標軸栗竖,不留空白。
output_縮緊坐標軸
plt.plot(x,np.sin(x))
plt.axis('tight')
【第十步】:讓x和y軸長度單位相同
plt.plot(x,np.sin(x))
plt.axis('equal')
output_單位等長
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者

  • 序言:七十年代末渠啤,一起剝皮案震驚了整個濱河市狐肢,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌沥曹,老刑警劉巖份名,帶你破解...
    沈念sama閱讀 216,372評論 6 498
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異妓美,居然都是意外死亡僵腺,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,368評論 3 392
  • 文/潘曉璐 我一進店門壶栋,熙熙樓的掌柜王于貴愁眉苦臉地迎上來辰如,“玉大人,你說我怎么就攤上這事贵试×鸲担” “怎么了?”我有些...
    開封第一講書人閱讀 162,415評論 0 353
  • 文/不壞的土叔 我叫張陵毙玻,是天一觀的道長呕童。 經(jīng)常有香客問我,道長淆珊,這世上最難降的妖魔是什么夺饲? 我笑而不...
    開封第一講書人閱讀 58,157評論 1 292
  • 正文 為了忘掉前任,我火速辦了婚禮施符,結(jié)果婚禮上往声,老公的妹妹穿的比我還像新娘。我一直安慰自己戳吝,他們只是感情好浩销,可當我...
    茶點故事閱讀 67,171評論 6 388
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著听哭,像睡著了一般慢洋。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上陆盘,一...
    開封第一講書人閱讀 51,125評論 1 297
  • 那天普筹,我揣著相機與錄音,去河邊找鬼隘马。 笑死太防,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的酸员。 我是一名探鬼主播蜒车,決...
    沈念sama閱讀 40,028評論 3 417
  • 文/蒼蘭香墨 我猛地睜開眼讳嘱,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了酿愧?” 一聲冷哼從身側(cè)響起沥潭,我...
    開封第一講書人閱讀 38,887評論 0 274
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎嬉挡,沒想到半個月后钝鸽,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,310評論 1 310
  • 正文 獨居荒郊野嶺守林人離奇死亡棘伴,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,533評論 2 332
  • 正文 我和宋清朗相戀三年寞埠,在試婚紗的時候發(fā)現(xiàn)自己被綠了屁置。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片焊夸。...
    茶點故事閱讀 39,690評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖蓝角,靈堂內(nèi)的尸體忽然破棺而出阱穗,到底是詐尸還是另有隱情,我是刑警寧澤使鹅,帶...
    沈念sama閱讀 35,411評論 5 343
  • 正文 年R本政府宣布揪阶,位于F島的核電站,受9級特大地震影響患朱,放射性物質(zhì)發(fā)生泄漏鲁僚。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,004評論 3 325
  • 文/蒙蒙 一裁厅、第九天 我趴在偏房一處隱蔽的房頂上張望冰沙。 院中可真熱鬧,春花似錦执虹、人聲如沸拓挥。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,659評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽侥啤。三九已至,卻和暖如春茬故,著一層夾襖步出監(jiān)牢的瞬間盖灸,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,812評論 1 268
  • 我被黑心中介騙來泰國打工磺芭, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留糠雨,地道東北人。 一個月前我還...
    沈念sama閱讀 47,693評論 2 368
  • 正文 我出身青樓徘跪,卻偏偏與公主長得像甘邀,于是被迫代替她去往敵國和親琅攘。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 44,577評論 2 353

推薦閱讀更多精彩內(nèi)容