日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

matplotlib包的学习(一)

發布時間:2025/3/12 编程问答 19 豆豆
生活随笔 收集整理的這篇文章主要介紹了 matplotlib包的学习(一) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一.matplotlib是什么

matplotlib是一個在Python中將數據可視化的第三方包,和matlab中的plot指令,和gnuplot類似,都是將數據進行可視化的工具。matplotlib是一個數學繪圖庫,可以用它來制作折線圖和散點圖等的圖表。

二.基礎指令

折線圖

1. 繪制折線圖

首先導入matplotlib中的pyplot,pyplot中包含了很多畫圖的函數,和matlab中畫圖類似,需要以下幾個要素:

  • 繪圖區域
  • 橫縱坐標
  • 數據
    因此根據這三個要素我們來繪制一幅折線圖
  • import matplotlib.pyplot as plt #導入matplotlib squares = [1, 4, 9, 16, 25] #數據點 plt.plot(squares) #繪制圖表 plt.show() #顯示圖表

    2. 修改標簽文字和線條粗細

    #導入matplotlib包 import matplotlib.pyplot as plt from matplotlib.pylab import mpl mpl.rcParams['font.sans-serif'] = ['SimHei'] # 顯示中文 #設置數據點 squares = [1, 4, 9, 16, 25] #設置圖表標題 plt.title("計算平方和",fontsize = 24) #給坐標軸添加標簽 plt.xlabel("數值", fontsize = 14) plt.ylabel("平方和", fontsize = 14) #設置線條粗細 plt.plot(squares, linewidth = 5) plt.show()
    • title()給圖表指定標題
    • linewidth()設置plot()繪制的線條粗細
    • xlabel()和ylabel()讓你能夠為每條軸設置標題

    3. 矯正圖形

    我們發現4的平方并非是25,所出現的原因如下:我們為plot()提供一系列數字時,它的默認第一個數據點對應的x坐標值為0,但是我們第一個數據點對應的坐標值是1。為了改變這個情況,我們新建一個列表存放x軸的數據。

    #導入matplotlib包 import matplotlib.pyplot as plt from matplotlib.pylab import mpl mpl.rcParams['font.sans-serif'] = ['SimHei'] # 顯示中文 #設置數據點 input_value = [1, 2, 3, 4, 5] squares = [1, 4, 9, 16, 25] #設置圖表標題 plt.title("計算平方和",fontsize = 24) #給坐標軸添加標簽 plt.xlabel("數值", fontsize = 14) plt.ylabel("平方和", fontsize = 14) #設置線條粗細 plt.plot(input_value, squares, linewidth = 5) plt.show()

    改變plot()中的參數,添加x軸數據,結果如下:

    此時52=25是正確的。

    散點圖

    1.繪制散點圖

    繪制散點圖的函數是scatter(),對他傳遞一對x和y坐標,就可以在指定位置繪制一個點。

    plt.scatter(3, 9) plt.show()

    2.繪制一系列點

    思路其實與折線圖一樣,用兩個列表分別存儲x和y坐標,再用scatter()把它們繪制出來就可以了

    x_value = [1, 2, 3, 4, 5] y_value = [3, 4, 7, 9, 11] #s=100表示點的大小 plt.scatter(x_value, y_value, s=100) plt.show()

    結果如下圖所示:

    3.設置坐標區間

    有時候需要顯示的數據點很多,但我們只需要看一個范圍內的數據,我們就可以設置圖表的坐標軸取值范圍。

    #x坐標值從1到1000 x_value = list(range(1,1001)) y_value = [x**2 for x in x_value] #s表示點的大小 plt.scatter(x_value, y_value, s=40) #設置每個坐標軸的取值范圍 plt.axis([0, 1100, 0, 1100000]) plt.show()
    • axis([橫坐標起點,橫坐標終點,縱坐標起點,縱坐標終點])

    結果如下:

    4.修改數據點顏色

    要修改數據點顏色時,在scatter()中傳遞實參c,c是一個列表,其中包含三個0-1之間的小數值,分別表示紅色、綠色和藍色分量(類似于RGB)

    • 藍色: ‘b’ (blue)
    • 綠色: ‘g’ (green)
    • 紅色: ‘r’ (red)
    • 藍綠色(墨綠色): ‘c’ (cyan)
    • 紅紫色(洋紅): ‘m’ (magenta)
    • 黃色: ‘y’ (yellow)
    • 黑色: ‘k’ (black)
    • 白色: ‘w’ (white)
    • 灰度表示: e.g. 0.75 ([0,1]內任意浮點數)
    • RGB表示法: e.g. ‘#2F4F4F’ 或 (0.18, 0.31, 0.31)
    #x坐標值從1到1000 x_value = list(range(1,1001)) y_value = [x**2 for x in x_value] #s表示點的大小 plt.scatter(x_value, y_value, s=40, edgecolors='none',c = (0,1,0)) #設置每個坐標軸的取值范圍 plt.axis([0, 1100, 0, 1100000]) plt.show()

    5.漸變色

    在數據可視化中,我們可以用較淺的顏色來表示小數值,用較深的顏色來顯示較大的值。

    plt.scatter(x_value, y_value, s=40, edgecolors='none',c = y_value , cmap = plt.cm.Blues)
    • 將參數c設置成了一個y值列表,并使用參數cmap告訴pyplot使用哪個顏色映射。這些代碼將y值較小的點顯示為淺藍色,并將y值較大的點顯示為深藍色,結果如下

    6.保存圖表

    savefig()可以自動將圖表保存到文件中,該函數的第一個實參指定要以什么樣的文件名保存圖表,一般來說這個文件將存儲在該代碼所在的目錄中;第二個實參將圖表多余的空白區域裁剪掉。

    7.清空圖表

    • plt.cla()

    • plt.close(0)# 關閉圖 0

    • plt.close(‘all’) 關閉所有圖

    總結

    以上是生活随笔為你收集整理的matplotlib包的学习(一)的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。