参见:https://blog.csdn.net/weixin_43592521/article/details/88909816

https://cloud.tencent.com/developer/news/395166

简介

先上图:

1. 用星图绘制你的战力表 - 图1

该图可以很好的反映二维数据的分布。

通常来说,一个n*p 的矩阵,列对应p 边形的几个边,而行则对应n 个样本。

我们尝试画一个:

首先创建基本数据

  1. > mat <- matrix(runif(100,10,20), ncol = 10)
  2. > head(mat)
  3. [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10]
  4. [1,] 15.02793 11.75973 17.95334 13.11035 14.72707 11.84934 12.87891 14.60447 14.02099 11.67889
  5. [2,] 12.44242 10.62128 10.14315 11.01140 10.83456 11.95527 17.24580 12.96430 11.50549 11.47003
  6. [3,] 17.32756 19.35300 15.58799 11.88323 10.35692 14.29070 13.87959 15.07588 19.22263 15.20624
  7. [4,] 10.43305 12.79005 16.12117 15.01036 10.65870 12.80955 15.69616 15.10064 15.22195 13.55428
  8. [5,] 19.17745 16.17473 19.07382 17.81300 11.33411 18.58552 11.18753 17.02681 15.53477 12.19307
  9. [6,] 13.77957 16.82956 10.22371 17.87506 18.62045 18.15138 19.02812 14.69834 19.89162 14.89555
  10. > colnames(mat) <- paste0("ability", 1:10)
  11. > rownames(mat) <- paste0("sample", 1:10)
  12. > head(mat)
  13. ability1 ability2 ability3 ability4 ability5 ability6 ability7 ability8 ability9 ability10
  14. sample1 15.02793 11.75973 17.95334 13.11035 14.72707 11.84934 12.87891 14.60447 14.02099 11.67889
  15. sample2 12.44242 10.62128 10.14315 11.01140 10.83456 11.95527 17.24580 12.96430 11.50549 11.47003
  16. sample3 17.32756 19.35300 15.58799 11.88323 10.35692 14.29070 13.87959 15.07588 19.22263 15.20624
  17. sample4 10.43305 12.79005 16.12117 15.01036 10.65870 12.80955 15.69616 15.10064 15.22195 13.55428
  18. sample5 19.17745 16.17473 19.07382 17.81300 11.33411 18.58552 11.18753 17.02681 15.53477 12.19307
  19. sample6 13.77957 16.82956 10.22371 17.87506 18.62045 18.15138 19.02812 14.69834 19.89162 14.89555
  20. stars(mat) # 一行代码搞定画图

1. 用星图绘制你的战力表 - 图2

调整参数

几个参数可以调整stars 图像:

  • radius

不显示星图内部线段

  • full

星图只画一半

  • labels

字符串类型数据,需要与数据的行等长,用来对星图进行标记。

  • flip.labels

调整labels 是否自动的调整位置。

  • draw.segments

选项T,让星图有颜色。

1. 用星图绘制你的战力表 - 图3

  • col.segments

颜色向量,指定星图中的颜色。

  • col.lines

同上,但指定的是星图的线段颜色。

  • key.loc=c(10,2)

让星图显示图例,并调整位置,简单使用来看,左边数字调整左右,越大越右;右边调整上下,越大越上。

1. 用星图绘制你的战力表 - 图4

其他内容

发现可以画的更加花里胡哨:

1. 用星图绘制你的战力表 - 图5

网上教程不多,自己摸索下吧,https://rdrr.io/r/graphics/stars.html

不过和graphic 对象是一家,如果基础包绘图功底好,应该很好上手的。