鳶尾花分為三類:山鳶尾、變色鳶尾和維吉尼亞鳶尾
iris為鳶尾花數(shù)據(jù)集
import warnings # 引用warnings模塊
warnings.filterwarnings('ignore') # 忽略警告消息
from sklearn import datasets # 從sklearn庫引用datasets
from matplotlib import pyplot as plt # 從matplotlib庫引用pyplot作為plt
import numpy as np # 引用numpy作為np
# 支持中文
plt.rcParams["font.sans-serif"] = ['SimHei'] # 用來正常顯示中文標簽茂契,SimHei是字體名稱吹榴,字體必須在系統(tǒng)中存在弛车,字體的查看方式和安裝第三部分
plt.rcParams['axes.unicode_minus'] = False # 用來正常顯示負號
iris = datasets.load_iris() # 調(diào)用函數(shù)
X = iris.data # 獲取iris鳶尾花數(shù)據(jù)集中的data數(shù)據(jù),
y = iris.target # 獲取iris鳶尾花數(shù)據(jù)集中的target數(shù)據(jù)翎迁,其中0代表山鳶尾符匾,1代表變色鳶尾祈坠,2代表維吉尼亞鳶尾
X1 = iris.data[: , :2] # 將iris鳶尾花數(shù)據(jù)集中的data數(shù)據(jù)進行切片害碾,只取前兩列(共四列)
# 繪制萼片散點圖(sepal_width*sepal_length)
plt.scatter(X1[y==0, 0],X1[y==0, 1],color='r',marker='+') # 選取y所有為0的+X的第一列
plt.scatter(X1[y==1, 0],X1[y==1, 1],color='g',marker='x') # 選取y所有為1的+X的第一列
plt.scatter(X1[y==2, 0],X1[y==2, 1],color='b',marker='o') # 選取y所有為2的+X的第一列
plt.xlabel('sepal width') # 設置橫坐標標注xlabel為sepal width
plt.ylabel('sepal length') # 設置縱坐標標注ylabel為sepal length
plt.title('sepal散點圖') # 設置散點圖的標題為sepal散點圖
plt.show()
sepal萼片散點圖.png
X2 = iris.data[: , 2:] # 將iris鳶尾花數(shù)據(jù)集中的data數(shù)據(jù)進行切片,只取后兩列(共四列)
# 繪制花瓣散點圖(petal_width*petal_length)
plt.scatter(X2[y==0, 0],X2[y==0, 1],color='r',marker='+') # 選取y所有為0的+X的第一列
plt.scatter(X2[y==1, 0],X2[y==1, 1],color='g',marker='x') # 選取y所有為1的+X的第一列
plt.scatter(X2[y==2, 0],X2[y==2, 1],color='b',marker='o') # 選取y所有為2的+X的第一列
plt.xlabel('petal width') # 設置橫坐標標注xlabel為petal width
plt.ylabel('petal length') # 設置縱坐標標注ylabel為petal length
plt.title('petal散點圖') # 設置散點圖的標題為petal散點圖
plt.show()
petal花瓣散點圖.png
由于下兩圖的結果與第二個圖一樣颁虐,因此可以省略
X3 = np.delete(X,1,axis=1) # 刪除X中的第二列
X3 = np.delete(X3,2,axis=1) # 刪除X中的第四列
# X3相當于將iris鳶尾花數(shù)據(jù)集中的data數(shù)據(jù)進行切片蛮原,只取后第一和第三列(共四列)
# 繪制萼片與花瓣的寬散點圖(petal_width*petal_width)
plt.scatter(X3[y==0, 0],X3[y==0, 1],color='r',marker='+')
plt.scatter(X3[y==1, 0],X3[y==1, 1],color='g',marker='x')
plt.scatter(X3[y==2, 0],X3[y==2, 1],color='b',marker='o')
plt.show()
萼片與花瓣的寬散點圖.png
X4 = np.delete(X,0,axis=1) # 刪除第一列
X4 = np.delete(X4,1,axis=1) # 擅長X中的第三列
# X4相當于將iris鳶尾花數(shù)據(jù)集中的data數(shù)據(jù)進行切片,只取后第二和第四列(共四列)
# 繪制萼片與花瓣的長散點圖(petal_length*petal_length)
plt.scatter(X4[y==0, 0],X4[y==0, 1],color='r',marker='+')
plt.scatter(X4[y==1, 0],X4[y==1, 1],color='g',marker='x')
plt.scatter(X4[y==2, 0],X4[y==2, 1],color='b',marker='o')
plt.show()
萼片與花瓣的長散點圖.png