2014-10-01 3 views
0

원형 각도/방향 (0-360도)에 따라 주파수를 나타 내기 위해 극좌표를 사용하려고합니다. 웬일인지 나는 3 개의 모든 각도를 표현하기 위해 음모에서 눈금을 정의하는 데 문제가 있습니다. 현재 2 개만 표시됩니다 ("B"와 "C"). 어떤 도움을 주시면 감사하겠습니다. 미리 감사드립니다.각도 데이터 ggplot2를 사용하여 극좌표 플롯 주파수

library(ggplot2) 

data <- read.table(text = "stat angle freq perc 
        A 1 720 79 
        B 223.5017 121 13 
        C 117.9372 68 7", header=T) 

head(data) 
str(data) 

db<-data 

db$stat<-factor(db$stat) 
levels(db$stat) 

# Plot 

bp<-ggplot(db, aes(x = angle, y = perc), fill = factor(stat)) + 
    geom_bar(stat="identity", colour="grey100", aes(fill = factor(stat), 
                width = 16)) + 
    coord_polar(theta="x", start=0) + 
    theme_minimal() + ylab("Detections (%)") + 
    scale_x_continuous("", lim=c(0,360), breaks = seq(0, 315, 45), 
        labels = c("N","NE","E","SE","S","SW","W","NW")) 

bp2<-bp + theme(panel.grid.major = element_line(colour = "grey60", size=0.45), 
       panel.grid.minor = element_line(colour = "grey60", size=0.45)) 

답변

0

너비는 geom_bar입니다. 다음 방법 :

ggplot (dB) + geom_bar (+ coord_polar (STAT = "아이덴티티"컬러 = "grey100", AES (X = 각도 Y는 = 합계 폭 = 2)를 작성하여, 퍼크 =)) + theme_minimal() + ylab (탐지 수 (%)) + scale_x_continuous (제한 = c (0,360), 휴식 = seq (0, 315, 45), 레이블 = c ("N", "NE" "E", "SE", "S", "SW"난에서의 각을 나타내는 우측 스케일을 설정 함께이 "W", "NW"))

enter image description here

+0

문제 완전한 원 (0-360)을 만들고 그 각도를 방향 (예 : "N", "S", "W", "E"등)으로 표시합니다. – user1626688

+0

위의 정답을 참조하십시오. – rnso

+0

나는 아직도 뭔가 잘못되고 있다고 생각합니다. 다른 "각도"(0/360에서 큰 분산)를 시도하면 더 큰 너비를 사용할 수 있습니다. 이 특정 각도 1에서 너비를 조정해야한다는 것이 이상합니다. – user1626688

관련 문제