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

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

机器学习第6天:数据可视化神器--Matplotlib

發(fā)布時(shí)間:2025/4/5 编程问答 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 机器学习第6天:数据可视化神器--Matplotlib 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

文章目錄

  • 一、Matplotlib簡(jiǎn)介
  • 二、散點(diǎn)圖
    • 第1步:導(dǎo)入數(shù)據(jù)
    • 第2步:拆分成訓(xùn)練集和測(cè)試集
    • 第3步:使用簡(jiǎn)單線性回歸模型來訓(xùn)練訓(xùn)練集
    • 第4步:繪制散點(diǎn)圖
  • 二、線圖
  • 三、等高線圖
    • 第1步:定義一個(gè)計(jì)算高度用的函數(shù)
    • 第2步:創(chuàng)建一個(gè)等差數(shù)列
    • 第3步:將等差數(shù)列綁定為網(wǎng)格的形式
    • 第4步:等高劃分并填色
  • 四、運(yùn)行結(jié)果展示
    • 1. 散點(diǎn)圖
    • 2. 線圖
    • 3. 等高線圖
  • 五、函數(shù)講解
    • 1. scatter()
    • 2. plot()
    • 3. linspace()
    • 4. contourf()

-----代碼傳送門-----
-----數(shù)據(jù)傳送門-----

一、Matplotlib簡(jiǎn)介

Matplotlib是一個(gè)數(shù)據(jù)可視化神器,畫圖用的。涉及散點(diǎn)圖、線圖、等高線圖、條形圖、柱狀圖、3D圖形、餅圖、Image圖像、灰度圖。

這里主要介紹如何繪畫機(jī)器學(xué)習(xí)中常用到的一些圖像。

二、散點(diǎn)圖

第1步:導(dǎo)入數(shù)據(jù)

import pandas as pd dataSet = pd.read_csv('studentscores.csv')X = dataSet.iloc[ : , : -1] Y = dataSet.iloc[ : , 1]

第2步:拆分成訓(xùn)練集和測(cè)試集

from sklearn.model_selection import train_test_split X_train, X_test, Y_train, Y_test = train_test_split(X, Y, test_size=0.25, random_state=0)

第3步:使用簡(jiǎn)單線性回歸模型來訓(xùn)練訓(xùn)練集

from sklearn.linear_model import LinearRegression regressor = LinearRegression() regressor = regressor.fit(X_train, Y_train)

第4步:繪制散點(diǎn)圖

import matplotlib.pyplot as plt plt.scatter(X_train, Y_train, color='red') plt.show()

二、線圖

數(shù)據(jù)沿用散點(diǎn)圖數(shù)據(jù)

plt.plot(X_train, regressor.predict(X_train), color='blue') plt.show()

三、等高線圖

第1步:定義一個(gè)計(jì)算高度用的函數(shù)

def f(x,y):return (1-x/2+x**5+y**3)*np.exp(-x**2-y**2)

第2步:創(chuàng)建一個(gè)等差數(shù)列

import numpy as np n=256 x=np.linspace(-3,3,n) #[-3,3],共256個(gè)點(diǎn) y=np.linspace(-3,3,n)

第3步:將等差數(shù)列綁定為網(wǎng)格的形式

X,Y=np.meshgrid(x,y)

第4步:等高劃分并填色

#等高劃分并著色 plt.contourf(X,Y,f(X,Y),8,alpha=0.75,cmap=plt.cm.hot)#設(shè)置等高線 C=plt.contour(X,Y,f(X,Y),8,colors='black',linewidth=0.5)#設(shè)置等高線的數(shù)值 plt.clabel(C,inline=True,fontsize=10)#設(shè)置坐標(biāo)軸 plt.xlim(-3,3) plt.ylim(-3,3)plt.show()

四、運(yùn)行結(jié)果展示

1. 散點(diǎn)圖

2. 線圖

3. 等高線圖

五、函數(shù)講解

1. scatter()

plt.scatter(X_train, Y_train, color=‘red’)中的X_train,Y_train就是X和Y軸的坐標(biāo),形狀為shape(n, )。更多用法見:sactter函數(shù)詳解

2. plot()

plt.plot(X_train, regressor.predict(X_train), color=‘blue’),用法和scatter()差不多,不同的是scatter()畫的是點(diǎn),plot() 畫的是線。

3. linspace()

np.linspace(-3,3,n)

它是創(chuàng)建等差數(shù)列的函數(shù),返回ndarray類型數(shù)據(jù)。起點(diǎn)為3,終點(diǎn)為3,n為步長(zhǎng),如果n=1,則返回array([ -3., -2., -1., 0., 1., 2., 3.])

4. contourf()

plt.contourf(X,Y,f(X,Y),8,alpha=0.75,cmap=plt.cm.hot)

contourf(contour等高線+filling);8 表示等高線分為多少部分,0->2部分,1->3部分,8->10部分;alpha=0.75表示圖形的透明度,如果alpha=0那么圖形的顏色為白,f(X,Y)第三個(gè)參數(shù)表示高度,不同高度域顏色就會(huì)不同。

到后面遇到了新的圖,我會(huì)同步更新這篇博客的。

總結(jié)

以上是生活随笔為你收集整理的机器学习第6天:数据可视化神器--Matplotlib的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。