雷达图(radar, spider, or web plot),可以使用R中的fmsb程序包构建;
适合作雷达图的数据是极特别的,只有一行,同时需要对列进行命名;作图之前,需要在数据中添加额外两行,第一行表示最大值,第二行表示最小值;
数据准备就绪后,加载fmsb,并使用radarchart()函数作图即可;
一、简单的雷达图
1 | > library(fmsb) |
二、图形优化
主要参数如下:
axistype,坐标轴类型,[0:5], 0=无标签;1=中心标签;2=周围标签;3=中心与周围标签;4=标签1的分数形式;5=标签3的分数形式;
seg,每个轴的段数,默认为4;
pty,数据点符号,默认16,若指定32,即不加点;
pcol,连接各点的外框线的颜色,默认[1:8],1=黑色,2=红色,3=绿色,4=蓝色,5=兰色,6=紫色,7=黄色,8=灰色;
plty,连接各点的外框线的类型,默认[1:6],1=实线,[2:6]=虚线;
plwd,连接各点的外框线的宽度;
pfcol,外框线圈住的面积中的填充色;
cglcol,网格线的颜色;
cglwd,网格线的宽度,默认为1;
cglty,网格线的类型:1=实线;2=虚线;3=细虚线;4=致密虚线,默认为3;
axislabcol,坐标轴标签的颜色;
casixlables,坐标轴刻度,定义最小值,最大值,以及刻度宽度;
title,标题;
centerzero,默认为FALSE,否则从(0,0)为中心作图;
vlcex,组标签字体大小;
1 | radarchart(data, |
三、多组叠加
注意:尽管多个雷达图可以叠加,但是不要叠加超过3层,否则会造成阅读困难;
1 | # 数据方面,我们把刚才的数据稍作修改,再添加两行进去即可; |
对雷达图进行优化,主要是控制颜色;
1 | color_line=c(rgb(0.2,0.5,0.5,0.9), rgb(0.8,0.2,0.5,0.9) , rgb(0.7,0.5,0.1,0.9)) |