程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> 更多關於編程 >> Python Matplotlib庫入門指南

Python Matplotlib庫入門指南

編輯:更多關於編程

       這篇文章主要介紹了Python Matplotlib庫入門指南,本文講解了Matplotlib是什麼,然後給出了Matplotlib基礎繪圖實例如繪制折線圖、繪制多線圖,並給出了圖例功能使用實例,需要的朋友可以參考下

      Matplotlib簡介

      Matplotlib是一個Python工具箱,用於科學計算的數據可視化。借助它,Python可以繪制如Matlab和Octave多種多樣的數據圖形。最初是模仿了Matlab圖形命令, 但是與Matlab是相互獨立的.

      通過Matplotlib中簡單的接口可以快速的繪制2D圖表

      初試Matplotlib

      Matplotlib中的pyplot子庫提供了和matlab類似的繪圖API.

      代碼如下:

      import matplotlib.pyplot as plt #導入pyplot子庫

      plt.figure(figsize=(8, 4)) #創建一個繪圖對象, 並設置對象的寬度和高度, 如果不創建直接調用plot, Matplotlib會直接創建一個繪圖對象

      plt.plot([1, 2, 3, 4]) #此處設置y的坐標為[1, 2, 3, 4], 則x的坐標默認為[0, 1, 2, 3]在繪圖對象中進行繪圖, 可以設置label, color和linewidth關鍵字參數

      plt.ylabel('some numbers') #給y軸添加標簽, 給x軸加標簽用xlable

      plt.title("hello"); #給2D圖加標題

      plt.show() #顯示2D圖

      基礎繪圖

      繪制折線圖

      與所選點的坐標有關

      復制代碼 代碼如下:

      # -*- coding: utf-8 -*-

      #!/usr/bin/env python

      import numpy as np

      import matplotlib.pyplot as plt

      x = [0, 1, 2, 4, 5, 6]

      y = [1, 2, 3, 2, 4, 1]

      plt.plot(x, y, '-*r') # 虛線, 星點, 紅色

      plt.xlabel("x-axis")

      plt.ylabel("y-axis")

      plt.show()

      更改線的樣式查看plot函數參數設置

      多線圖

      只需要在plot函數中傳入多對x-y坐標對就能畫出多條線

       代碼如下:

      # -*- coding: utf-8 -*-

      #!/usr/bin/env python

      import numpy as np

      import matplotlib.pyplot as plt

      x = [0, 1, 2, 4, 5, 6]

      y = [1, 2, 3, 2, 4, 1]

      z = [1, 2, 3, 4, 5, 6]

      plt.plot(x, y, '--*r', x, z, '-.+g')

      plt.xlabel("x-axis")

      plt.ylabel("y-axis")

      plt.title("hello world")

      plt.show()

      柱狀圖

       代碼如下:

      # -*- coding: utf-8 -*-

      #!/usr/bin/env python

      import numpy as np

      import matplotlib.pyplot as plt

      x = [0, 1, 2, 4, 5, 6]

      y = [1, 2, 3, 2, 4, 1]

      z = [1, 2, 3, 4, 5, 6]

      plt.bar(x, y)

      plt.xlabel("x-axis")

      plt.ylabel("y-axis")

      plt.show()

      子圖

      subplot()函數指明numrows行數, numcols列數, fignum圖個數. 圖的個數不能超過行數和列數之積

       代碼如下:

      # -*- coding: utf-8 -*-

      #!/usr/bin/env python

      import numpy as np

      import matplotlib.pyplot as plt

      x = [0, 1, 2, 4, 5, 6]

      y = [1, 2, 3, 2, 4, 1]

      z = [1, 2, 3, 4, 5, 6]

      plt.figure(1)

      plt.subplot(211)

      plt.plot(x, y, '-+b')

      plt.subplot(212)

      plt.plot(x, z, '-.*r')

      plt.show()

      文本添加

      當需要在圖片上調價文本時需要使用text()函數, 還有xlabel(), ylabel(), title()函數

      text()函數返回matplotlib.text.Text, 函數詳細解釋

       代碼如下:

      # -*- coding: utf-8 -*-

      #!/usr/bin/env python

      import numpy as np

      import matplotlib.pyplot as plt

      x = [0, 1, 2, 4, 5, 6]

      y = [1, 2, 3, 2, 4, 1]

      plt.plot(x, y, '-.*r')

      plt.text(1, 2, "I'm a text") //前兩個參數表示文本坐標, 第三個參數為要添加的文本

      plt.show()

      圖例簡介

      legend()函數實現了圖例功能, 他有兩個參數, 第一個為樣式對象, 第二個為描述字符

       代碼如下:

      # -*- coding: utf-8 -*-

      #!/usr/bin/env python

      import numpy as np

      import matplotlib.pyplot as plt

      line_up, = plt.plot([1,2,3], label='Line 2')

      line_down, = plt.plot([3,2,1], label='Line 1')

      plt.legend(handles=[line_up, line_down])

      plt.show()

      或者調用set_label()添加圖例

      復制代碼 代碼如下:

      # -*- coding: utf-8 -*-

      #!/usr/bin/env python

      import numpy as np

      import matplotlib.pyplot as plt

      line, = plt.plot([1, 2, 3])

      line.set_label("Label via method")

      plt.legend()

      plt.show()

      同時對多條先添加圖例

       代碼如下:

      # -*- coding: utf-8 -*-

      #!/usr/bin/env python

      import numpy as np

      import matplotlib.pyplot as plt

      line1, = plt.plot([1, 2, 3])

      line2, = plt.plot([3, 2, 1], '--b')

      plt.legend((line1, line2), ('line1', 'line2'))

      plt.show()

    1. 上一頁:
    2. 下一頁:
    Copyright © 程式師世界 All Rights Reserved