python資料圖形化—— matplotlib 基礎應用

來源:互聯網
上載者:User

 

  matplotlib是python中常用的資料圖形化工具,用法跟matlab有點相似。調用簡單,功能強大。在Windows下可以通過命令列 pip install matplotlib 來進行安裝。

  以下為一些基礎使用的例子:

 

1、繪製直線

  先通過numpy產生在直線 y = 5 * x + 5 上的一組資料,然後將其繪製在圖表上

1 import numpy as np2 import matplotlib.pyplot as plot3 4 x = np.linspace(1, 10, 10)5 y = 5 * x + 56 7 # plot.figure()8 plot.plot(x, y)9 plot.show()

  運行上面的代碼,結果如下:

 

2、繪製折線圖

  繪製折線圖調用的matplotlib的方法一樣,只是使用numpy產生的資料不一樣。

1 import numpy as np2 import matplotlib.pyplot as plot3 4 x = np.linspace(1, 10, 10)5 y = np.random.normal(1, 5, 10)6 7 plot.figure()8 plot.plot(x, y)9 plot.show()

  由於涉及到隨機數,每次啟動並執行結果會不一樣。某次運行結果如下:

 

3、同時繪製多條樣式不一的曲線

  plot方法可以同時繪製多條圖線,並支援不同的曲線採用不同的樣式和顏色來顯示。在下面的代碼中,plot方法的參數,3個為一組,共3組,每一組的參數分別為 x軸座標、y軸座標和樣式。

  樣式用法:

格式:

fmt = '[color][marker][line]'

樣式的第一個字母表示顏色,支援的顏色有:r(red)、g(green)、b(blue)、c(cyan)、m(megenta)、y(yellow)、w(white)、k(black)。

樣式的第二部分表示圖線的填充符號,可以寫:--(虛線)、+(加號)、^(向上的正三角形)、s(正方形)、o(圓形)等。還可以同時採用兩種填充方式,如‘ro--’表示用紅色的虛線及實心圓來同時進行填充。


import numpy as npimport matplotlib.pyplot as plotx = np.linspace(-10, 10, 100)plot.plot(x, 100 * x, 'r--', x, 10*x ** 2, 'g^', x, x ** 3, 'c+')plot.show()

 

4、繪製散佈圖

  調用 scatter 方法可以繪製散佈圖。

import numpy as npimport matplotlib.pyplot as plotx = np.linspace(1, 10, 10)y = np.linspace(1, 10, 10)plot.scatter(x, y)plot.ylabel('y value')plot.xlabel('x scale')plot.title('Scatter Figure')plot.show()

輸出:

 

 可以通過設定不同參數的形式獲得不同的散佈圖:

 1 import numpy as np 2 import matplotlib.pyplot as plot 3  4 # 固定隨機數的seed,使其每次運行產生的結果都一樣 5 np.random.seed(1) 6  7 num = 100 8 edgeRadius = 0.5 9 x = np.random.rand(num)10 y = np.random.rand(num)11 area = (200 * np.random.rand(num))12 color = np.sqrt(area)13 # 建立地區,用不同的樣式來顯示不同分區的點14 triangleArea = np.ma.masked_where(x <= edgeRadius, area)15 diamondArea  = np.ma.masked_where(x > edgeRadius, area)16 plot.scatter(x, y, s=triangleArea, marker='o', c=color)17 plot.scatter(x, y, s=diamondArea, marker='d', c=color)18 plot.title('Random Scatter')19 plot.show()

 

5、繪製柱狀圖與多個圖形

  在以下樣本中, figure函數指定了圖表的編號和大小比例,suptitle設定標題,subplot指定當前繪圖的位置(參數221表示2x2共四個繪圖區域,最後的1表示第一個繪圖區域)。後面的bar、scatter、plot和pie函數分別繪製了柱狀圖、散佈圖、折(直)線圖和餅圖。

import matplotlib.pyplot as plotlabels = ['A', 'B', 'C']values = [1, 2, 3]plot.figure(1, figsize=(9, 6))plot.suptitle('Multiple Plots')plot.subplot(221)plot.bar(labels, values)plot.subplot(222)plot.scatter(labels, values)plot.subplot(223)plot.plot(labels, values)plot.subplot(224)plot.pie(values, labels=labels)plot.show()

 

 

本文地址:www.cnblogs.com/laishenghao/p/9573465.html 

作者部落格:( •̀ ω •́ )y

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.