1.平行坐标
图中每条垂直的线代表一个特征,表中一行的数据在图中表现为一条折线,不同颜色的线表示不同的类别。
代码语言:javascript复制import pandas as pd
import matplotlib.pyplot as plt
from pandas.plotting import parallel_coordinates
data = pd.read_csv('D:\iris.csv')
plt.figure('多维度-parallel_coordinates')
plt.title('parallel_coordinates')
parallel_coordinates(data, 'Species', color=['blue', 'green', 'red', 'yellow'])
plt.show()
2.RadViz雷达图
4个特征对应于单位圆上的4个点,圆中每一个散点代表表中一行数据。可以想象为每个散点上都有4条线分别连接到4个特征点上,而特征值(经过标准化处理)就表示这4条线施加在散点上的力,每个点的位置恰好使其受力平衡。
代码语言:javascript复制import pandas as pd
import matplotlib.pyplot as plt
from pandas.plotting import radviz
data = pd.read_csv('D:\iris.csv')
plt.figure('多维度-radviz')
plt.title('radviz')
radviz(data, 'Species', color=['blue', 'green', 'red', 'yellow'])
plt.show()
3.Andrews曲线
特征值转化为傅里叶序列的系数,不同颜色的曲线代表不同的类别。
代码语言:javascript复制import pandas as pd
import matplotlib.pyplot as plt
from pandas.plotting import andrews_curves
data = pd.read_csv('D:\iris.csv')
plt.figure('多维度-andrews_curves')
plt.title('andrews_curves')
andrews_curves(data, 'Species', color=['blue', 'green', 'red', 'yellow'])
plt.show()
4.矩阵图
表示不同特征之间的关系。
代码语言:javascript复制import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
data = pd.read_csv('D:\iris.csv')
sns.pairplot(data, hue='Species')
plt.show()
5.相关系数热力图
表示不同特征之间的相关性(Pearson相关系数),数值越大,相关性越高。
代码语言:javascript复制import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
data = pd.read_csv('D:\iris.csv')
corr = data.corr()
sns.heatmap(corr, annot=True)
plt.show()