1

您好我有一组数据(.csv 文件),其中包含距离方向和频率信息,格式为...

      30   60   90   120   150   ...
100  131   12   22   201    66
200   45   83  351   180   210
300   99  121   33     3   306
...

我对 R 有一些经验,但在将一些图表放在一起时遇到了麻烦。

我想使用上面的数据制作一个极坐标图。“标题”(行名)跨越前 30、60、90 等,范围在第一列(100、200、300 等)下方,强度是距离方向组合的值,例如 100m @ 30deg = 131 次观察。

任何帮助是极大的赞赏。

4

1 回答 1

1

我会以长格式获取您的数据,将行名作为一列,然后使用ggplot2coord_polar

 library(reshape2) 
 library(ggplot2)
 # add rownames a column 'length'
  DT$length <- rownames(DT)
 # make into long format (the value column will be the intensities
  dtlong <- melt(DT)
 # convert from factor column `X30` etc to numeric showing angle
  dtlong$angle <- as.numeric(gsub(dtlong$variable,pattern = 'X',replacement=''))
# use ggplot with coord_polar to make the plot
ggplot(dtlong, aes(x=length,y=angle, size = value)) + 
 geom_point() + 
 coord_polar(theta = 'y')

在此处输入图像描述

于 2013-02-18T23:15:22.537 回答