平行坐标图

平行坐标图以多个垂直且平行的坐标轴表示多个维度,以维度上的刻度表示在该属性上的对应值,以颜色区分类别。每个样本在各个维度上对应一个值,将其相连得到的一条折线表示该样本。

平行坐标图中如果某个属性上相同颜色的折线较为集中,不同颜色的有一定间距,说明该属性对于预测标签类别有较大帮助。如果某个属性上线条混乱,颜色混杂,说明该属性对于标签鉴别判定没有价值。

在MATLAB中用parallelcoords函数可以绘制平行坐标图。

下面是一个实例。在命令窗口中输入:

code.matlab
>> load carbig
>> X = [MPG,Acceleration,Displacement, Weight, Horsepower];
>> varNames = {'MPG'; 'Acceleration'; 'Displacement'; 'Weight'; 'Horsepower'};
>> Cyl468 = ismember(Cylinders,[4 6 8]);
>> parallelcoords(X(Cyl468,:), 'group',Cylinders(Cyl468),'standardize','on','labels',varNames)

其中,X(Cyl468,:)为绘图数据,Cylinders(Cyl468)为分组变量,对每列数据进行标准化转换,用varNames变量的数据作为标签。

生成结果如图1-3所示。

Document Image
\[\]

图1-3 平行坐标图