matplotlib

自學(xué)整理記錄,大神見笑

from matplotlib import pyplot as plt

  • 常用統(tǒng)計圖
    1.折線圖被冒,主要查看變化
    2.直方圖军掂,繪制連續(xù)型數(shù)據(jù),主要是統(tǒng)計
    3.條形圖昨悼,繪制離散型數(shù)據(jù)蝗锥,主要是統(tǒng)計
    4.散點圖,主要查看分布規(guī)律

折線圖

  • 提供數(shù)據(jù)率触,指定x橫軸的值终议,指定y縱軸的值

x = range(2, 26, 2)
y = [15, 13, 14.5, 17, 20, 25, 26, 26, 24, 22, 18, 15]

  • 繪圖,傳入x和y,通過plot繪制出折線圖

plt.plot(x, y)

  • 展示圖在執(zhí)行程序的時候展示圖形

plt.show()

  • 注:x和y的列表個數(shù)要相同穴张,否則會報錯ValueError

折線圖擴展

  • 設(shè)置圖片大小和像素

plt.figure(figsize=(20, 8), dpi=80)

  • 注:要寫在繪圖之前

  • 注:figsize兩個參數(shù)分別表示長度和寬度

  • 注:dpi是讓圖像更清晰

  • 保存圖片

plt.savefig("./test1.png")

  • 注:要寫在繪圖之后

  • 注:參數(shù)是保存的路徑

  • 注:自己加后綴保存成自己想要的格式细燎,比如保存為svg矢量圖格式,放大不會有鋸齒

  • 軸刻度

plt.xticks(range(2, 26, 2))
plt.yticks(range(min(y) + 1, max(y) + 1))

  • 注:上面代碼分別為設(shè)置x軸刻度和y軸刻度

  • 調(diào)整軸刻度顯示信息(包含顯示內(nèi)容陆馁、中文亂碼)

my_font = font_manager.FontProperties(fname="C:\Windows\ttt\simsun.ttc", size=14)
# 調(diào)整x軸刻度信息
_x = list(x)
_xtick_labels = ["10點{}分".format(i) for i in range(60)]
_xtick_labels += ["11點{}分".format(i) for i in range(60)]
plt.xticks(_x[::3], _xtick_labels[::3], rotation=45, fontproperties=my_font)

  • 注:需要導(dǎo)包

from matplotlib import font_manager

  • 注:rotation表示旋轉(zhuǎn)角度找颓,順時針旋轉(zhuǎn)

  • 注:fontproperties正常顯示中文字體

  • 注:fename后面的路徑一定要手動輸入

  • 注:可以在FontProperties中的參數(shù)size設(shè)置字體大小

  • 注:y軸同理

  • x軸、y軸和標(biāo)題的提示信息

plt.xlabel("時間", fontproperties=my_font)
plt.ylabel("時間/溫度(℃)", fontproperties=my_font)
plt.title("10點到12點每分鐘溫度變化圖", fontproperties=my_font)

  • 注:xlabel即x軸信息叮贩,ylabel即y軸信息击狮,title即標(biāo)題

  • 注:如果中文亂碼,則在后面添加參數(shù)fontproperties即可

  • 繪制網(wǎng)格

plt.grid(alpha=0.4)

  • 注:alpha表示網(wǎng)格透明度益老,0透明彪蓬,1不透明

  • 注:網(wǎng)格的密度,由x軸和y軸刻度控制

  • 繪制多個線條

plt.plot(x, y_1)
plt.plot(x, y_2)

  • 注:再plot一次就會畫出多一條線

  • 添加圖例

plt.plot(x, y_1, label="自己")
plt.plot(x, y_2, label="同桌")
...
plt.legend(prop=my_font, loc="upper right")

  • 注:兩個步驟捺萌,首先在plot方法中添加參數(shù)label档冬,然后寫添加圖例方法legeng()

  • 注:legend中prop參數(shù)是解決中文亂碼

  • 注:legend中l(wèi)oc參數(shù)是圖例放的位置,默認是best桃纯,系統(tǒng)會放在最合適的位置酷誓,自己可以寫英文或者漢字,查原碼即可

  • 線條樣式(顏色态坦、線條風(fēng)格盐数,線條寬度等)

plt.plot(x, y_1,color="r", linestyle="--", linewidth=5)

  • 注:color參數(shù)可以填顏色字符,或者十六進制顏色代碼都可以
  • 注:linestyle參數(shù)可以改變線條風(fēng)格
  • 注:linewidth參數(shù)越大越粗
線條風(fēng)格.jpg
  • 添加文本注釋

  • 添加水印

散點圖

  • 繪圖伞梯,傳入x和y玫氢,通過scatter繪制出散點圖

plt.scatter(x, y)

  • 注:x和y的列表個數(shù)要相同,否則會報錯ValueError
  • 注: 散點圖擴展與折線圖一樣

條形圖

  • 繪圖谜诫,傳入x和y漾峡,通過bar繪制出條形圖

plt.bar(x, y)

  • 注:默認會豎著顯示

條形圖擴展

  • 橫著顯示

plt.barh(x, y)

  • 條形寬度

plt.bar(x, y, width=0.3)
plt.barh(x, y, height=0.3)

  • 注:豎著使用width,橫著使用height
  • 注:其余擴展與折線圖類似
  • 注:繪制多次條形圖喻旷,即將x軸向右移動即可生逸,但移動的距離,次數(shù)總和不能超過1且预,且寬度要合適牺陶,如下圖
繪制多次條形圖.jpg

直方圖

  • 繪圖,傳入a和組數(shù)20辣之,通過hist繪制出直方圖

plt.hist(a, 20)

  • 注:a參數(shù)是原始數(shù)據(jù)掰伸,20參數(shù)是組數(shù),即有多少個直方
  • 注:直方圖會自己計算數(shù)據(jù)出現(xiàn)的個數(shù)怀估,顯示在圖上狮鸭,所以需要原始數(shù)據(jù)合搅,不能用統(tǒng)計好之后的數(shù)據(jù)
  • 注:如果是統(tǒng)計好的數(shù)據(jù),依然想繪制成直方圖的樣式歧蕉,使用條形圖即可
  • 注:使用條形圖時畫出直方圖效果灾部,需要將width設(shè)置為1,并且x軸刻度向左移動0.5即可

直方圖擴展

  • 計算組數(shù)

d = 5
num_bins = (max(a) - min(a)) // d
...
plt.hist(a, num_bins)
plt.xticks(range(min(a), max(a)+d, d))

  • 注:num_bins即組數(shù)惯退,d為組距

  • 注:最大值與最小值的差除組距赌髓,一定要保證整除,否則x軸顯示會偏移

  • 注:xticks方法中催跪,max+d保證值都能顯示完全

  • 頻率分布直方圖

plt.hist(a, num_bins, normed=True)

  • 注:正常y軸會顯示出現(xiàn)的區(qū)域內(nèi)出現(xiàn)的個數(shù)
  • 注:normed設(shè)置為True锁蠕,即會將y軸顯示為小數(shù)格式的頻率
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市懊蒸,隨后出現(xiàn)的幾起案子荣倾,更是在濱河造成了極大的恐慌,老刑警劉巖骑丸,帶你破解...
    沈念sama閱讀 211,743評論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件舌仍,死亡現(xiàn)場離奇詭異,居然都是意外死亡通危,警方通過查閱死者的電腦和手機铸豁,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,296評論 3 385
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來菊碟,“玉大人节芥,你說我怎么就攤上這事】蚬担” “怎么了?”我有些...
    開封第一講書人閱讀 157,285評論 0 348
  • 文/不壞的土叔 我叫張陵增炭,是天一觀的道長忍燥。 經(jīng)常有香客問我,道長隙姿,這世上最難降的妖魔是什么梅垄? 我笑而不...
    開封第一講書人閱讀 56,485評論 1 283
  • 正文 為了忘掉前任,我火速辦了婚禮输玷,結(jié)果婚禮上队丝,老公的妹妹穿的比我還像新娘。我一直安慰自己欲鹏,他們只是感情好机久,可當(dāng)我...
    茶點故事閱讀 65,581評論 6 386
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著赔嚎,像睡著了一般膘盖。 火紅的嫁衣襯著肌膚如雪胧弛。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,821評論 1 290
  • 那天侠畔,我揣著相機與錄音结缚,去河邊找鬼。 笑死软棺,一個胖子當(dāng)著我的面吹牛红竭,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播喘落,決...
    沈念sama閱讀 38,960評論 3 408
  • 文/蒼蘭香墨 我猛地睜開眼茵宪,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了揖盘?” 一聲冷哼從身側(cè)響起眉厨,我...
    開封第一講書人閱讀 37,719評論 0 266
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎兽狭,沒想到半個月后憾股,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,186評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡箕慧,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,516評論 2 327
  • 正文 我和宋清朗相戀三年服球,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片颠焦。...
    茶點故事閱讀 38,650評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡斩熊,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出伐庭,到底是詐尸還是另有隱情粉渠,我是刑警寧澤,帶...
    沈念sama閱讀 34,329評論 4 330
  • 正文 年R本政府宣布圾另,位于F島的核電站霸株,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏集乔。R本人自食惡果不足惜去件,卻給世界環(huán)境...
    茶點故事閱讀 39,936評論 3 313
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望扰路。 院中可真熱鬧尤溜,春花似錦、人聲如沸汗唱。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,757評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽哩罪。三九已至梢睛,卻和暖如春肥印,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背绝葡。 一陣腳步聲響...
    開封第一講書人閱讀 31,991評論 1 266
  • 我被黑心中介騙來泰國打工深碱, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人藏畅。 一個月前我還...
    沈念sama閱讀 46,370評論 2 360
  • 正文 我出身青樓敷硅,卻偏偏與公主長得像,于是被迫代替她去往敵國和親愉阎。 傳聞我的和親對象是個殘疾皇子绞蹦,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 43,527評論 2 349

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