调和曲线图的思想与傅里叶变换十分相似,它是根据三角变换方法将 p 维空间的点映射到二维平面上的曲线上。
设p维数据X=(x1, x2, …, xp)′,则对应的曲线是
\[{f}_{X}(t)=\frac{{x}_{1}}{\sqrt{2}}+{x}_{2}\operatorname{sin}{t}+{x}_{3}\operatorname{cos}{t}+{x}_{4}\operatorname{sin}{w}t+{x}_{5}\operatorname{cos}{2}t+\cdots(-\pi\leq t\leq\pi)\]
在上式中,当t在区间(-π, π)上变化时,其轨迹是一条曲线。
调和曲线图中,属于同一类别的曲线扭在一起,不同类别的曲线处于不同的束。
在MATLAB中用andrewsplot函数可以绘制调和曲线图。
在命令窗口中输入
code.matlab
>> load carbig
>> X = [MPG,Acceleration,Displacement, Weight,Horsepower];
>> andrewsplot(X(Cyl468,:), 'group', Cylinders(Cyl468), 'standardize','on')
其中,X(Cyl468,:)为绘图数据,Cylinders(Cyl468)为分组变量,对每列数据进行标准化转换。生成结果如图1-4所示。
\[\]
图1-4 调和曲线图