1.饼图
针对类别数据,如要查看每类数据的百分比,使用Matplotlib库绘制饼图
## 加载包
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import scipy as sp
## 引入3D坐标系
from mpl_toolkits.mplot3d import Axes3D
## cm模块提供大量的colormap函数
from matplotlib import cm
import matplotlib as mpl
import seaborn as sns
sns.set_style("whitegrid")
from sklearn.preprocessing import LabelEncoder
## 饼图
## 切片将按顺时针方向排列并绘制.
labels = ['Frogs', 'Pigs', 'Dogs', 'Cats']## 标注
sizes = [15, 30, 45, 10] ## 大小
colors = ['yellow', 'gold', 'lightblue', 'lightgreen'] ## 颜色
## 0.1代表第二个块从圆中分离出来
explode = (0, 0.1, 0, 0) # 'Pigs'分离出来
## 绘制饼图
plt.pie(sizes, explode=explode, labels=labels, colors=colors,
autopct='%1.1f%%', shadow=True, startangle=90)
# Set aspect ratio to be equal so that pie is drawn as a circle.
plt.axis('equal')
plt.show()
2.矩阵散点图
3种鸢尾花4个特征值两两之间的关系。使Seaorn库绘制矩阵散点图
## 加载数据Iris
Iris = pd.read_csv("D:\Desktop\python在机器学习中的应用\Iris.csv")
Iris=Iris.iloc[:,1:6]
Iris.head()
## 矩阵散点图
sns.pairplot(Iris,hue="Species",size=3,diag_kind="hist",markers=["o", "s", "D"]) #圆形、正方形、菱形
plt.show()
hue="Species"为分类变量,size=3 每个图像块的大小,diag_kind="hist"对角线用直方图绘制
3.平行坐标图
针对高维数据,不只有散点图,还有平行坐标图,还可以看到不同特征之间数量变化的范围和趋势
from pandas.plotting import parallel_coordinates
## 平行坐标图
plt.figure(figsize=(6,4))
parallel_coordinates(Iris, "Species",alpha = 0.8)
plt.title("Parallel graph")
plt.show()
4.热力图
为了观察数据集变量之间的相关性,用热力图来描绘相关系数矩阵。在热力图中通过颜色的深浅表示响应取值的大小,可以从全局上观察数据,做到重点突出。使用Seaborn库的*heatmap()*函数来绘制鸢尾花4个特征相关系数矩阵的热力图。
##
plt.figure(figsize=(6,6))
ax = sns.heatmap(datacor,square=True,annot=True,fmt = ".3f",
linewidths=.5,cmap="YlGnBu",
cbar_kws={"fraction":0.046, "pad":0.03})
ax.set_title("Iris Data variable correlation")
plt.show()
cmap=“YlGnBu” 表示热力图使用的颜色, cbar_kws={“fraction”:0.046, “pad”:0.03} colorba和整体图像大小保持一致,r美观