首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何利用R包圆在360上绘制柱状图数据玫瑰图。

如何利用R包圆在360上绘制柱状图数据玫瑰图。
EN

Stack Overflow用户
提问于 2016-08-18 18:02:50
回答 1查看 6.6K关注 0票数 1

我对R(或任何类型的编码)非常缺乏经验,但我正在尝试使用包循环来绘制一个玫瑰图,以获取来自单元格的定向数据。本质上,我已经为这些单元格的方向创建了一个直方图,现在我想在圆形图上绘制数据,以显示"x“单元格类型比"y”单元格类型更定向。我需要数据在一个度图上,而不是默认的π上。有人能帮我吗?我还没有找到任何可以插入我的数据的东西,只是很多风玫瑰图的气象代码没有用。就像我说的,对这件事很陌生。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-08-18 19:15:14

这是第一次尝试。假设您的数据在dataframe d中,我在下面重新创建了它(为Angle = 250添加一行,它似乎在上面的注释中缺失):

代码语言:javascript
复制
d <- structure(list(Angle = c(0, 10, 20, 30, 40, 50, 60, 70, 80, 90, 
100, 110, 120, 130, 140, 150, 160, 170, 180, 190, 200, 210, 220, 
230, 240, 260, 270, 280, 290, 300, 310, 320, 330, 340, 350, 250
), Frequency = c(0, 0, 0.001, 2, 4, 18.03, 11, 12, 5, 7, 10, 
13, 2, 0.003, 0.01, 0, 1, 0.05, 2, 3, 3.7, 6, 0, 0, 0, 0, 0.2, 
0.006, 0, 0, 0, 0, 0, 0, 0, 0)), .Names = c("Angle", "Frequency"
), row.names = c(NA, 36L), class = "data.frame")
str(d)
# 'data.frame': 36 obs. of  2 variables:
#  $ Angle    : num  0 10 20 30 40 50 60 70 80 90 ...
#  $ Frequency: num  0 0 0.001 2 4 ...

我们可以使用ggplot

代码语言:javascript
复制
library(ggplot2)
ggplot(d, aes(x = Angle, y = Frequency)) +
  coord_polar(theta = "x", start = -pi/45) +
  geom_bar(stat = "identity") +
  scale_x_continuous(breaks = seq(0, 360, 60))

票数 8
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39024758

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档