最近更新了两次corrplot包,最新的0.60版本较之前的0.40进步较多。之所以取名为0.60版本,意味着此包的自评分终于上了60的及格分数,也有可能是这个包的最终版本。corrplot的应用范围很明确,就是中小矩阵 (<100*100) 的可视化,尤其是中小相关矩阵、距离矩阵、相似度矩阵等。

本次主要变动如下:

  1. 彻底解决了空白边距过大问题(尤其在文本标签较长时候),这个是个历史遗留问题,之前的方法比较原始简陋,已经有好多人发邮件投诉了(要不我也没动力更改);现在迭代来计算strwidth直至收敛,可以精确计算文本的长宽度了。控制文本大小的参数 tl.cex 也更精准了。
  2. 修订了参数名称和帮助文档,之前的参数取名、帮助文档太随意了。比如”PCA”排序就会让人错觉以为是第一主成分,目前更改成了更为妥当的”AOE”,是angular order of the eigenvectors的意思,具体参见文档。而第一主成分用”FPC”来表示了;此外,从效果来看,”AOE”排序结果一般都比”FPC”要好。提到矩阵排序,seriation包已经很NB了,更多方法可以参见此包。PS: 作者之一Kurt Hornik是R Core之一,是CRAN的主要维护人,每天都要check、答复新进来的包,德艺双馨、产出惊人,是绝对的教授中的战斗兽。
  3. 增加了zoom参数,来放缩原矩阵,使之可以轻松地应用到非[-1,1] 的矩阵;同时增加了参数cl.lim,使得颜色轴标签上只显示需要展示的部分。当然,此时颜色轴上的标签也会和缩放前的一样。
  4. 增加了横轴文本标签的旋转角度参数tl.srt,这个我虽不喜欢,但有人希望加这个方便阅读。总结来看,corrplot的每次更新都是有人发邮件说需要这样那样的功能……
  5. 增加、删除了一些函数。主要是加了corrMatOrder() 和corrplot.mixed () 函数来做矩阵排序和混合可视工作。删除了corrplot.*()系列不那么常用的函数。
  6. 进一步优化了代码并谨慎地选择了各个参数的默认值。虽然这个没有什么技术难度,但因为涉及到的很多都是绘图,审美之类的对我这种时常喜欢纠结的土人实在很麻烦…… 其实,更新最多的时间竟然花在了默认参数的选择之上,这个可能和我的星座有关!!

可视化是数据&模型&结果的美学展示,其中在图形展示这一块主观性较强,因此corrplot很注重各个细节,提供了很多选项让大家自己选择。但就因为这这样,corrplot函数的参数多达43+个,显得很累赘。这就是所谓的双刃剑吧。

此外,为了体验GitHub,我把corrplot主页从Rforge上迁移到了GitHub: https://github.com/taiyun/corrplot 如果有什么问题或者新的需求请到Issues那里提出。

再此外,我把R与最优化的文档也放在GitHub上了: https://github.com/taiyun/Optimization-using-R ,我自己近来空闲时间很少了,希望感兴趣的同学能对这份文档增删添补,以方便大家快速、便捷地查阅、使用。

为了使得本博文不那么呆板,文末以图会友吧:

© 2010 优秀是一种习惯 taiyun.wei@cos.name Suffusion theme by Sayontan Sinha