ggplot2를 사용하여 R에서 일부 불즈 아이 차트를 만듭니다. 차트에 불스 아이 층의 값을 표시하려는 경우를 제외하고 모두 매우 기쁘게 보입니다. 줄거리 나 줄거리의 오른쪽 아래에 놓기 만해도 행복 할 것입니다.하지만이 작업을 수행하는 데는 약간의 어려움이 있습니다. 여기 더 많은 불스 아이 음모가 R
다시 예제 데이터입니다 :critters <- structure(list(Zoo = "Omaha", Animals = 50, Bears = 10, PolarBears = 3), .Names = c("Zoo",
"Animals", "Bears", "PolarBears"), row.names = c(NA, -1L), class = "data.frame")
그리고 음모하는 방법 :
는d <- data.frame(animal=factor(c(rep("Animals", critters$Animals),
rep("Bears", critters$Bears), rep("PolarBears", critters$PolarBears)),
levels = c("PolarBears", "Bears", "Animals"), ordered= TRUE))
grr <- ggplot(d, aes(x = factor(1), fill = factor(animal))) + geom_bar() +
coord_polar() + labs(x = NULL, fill = NULL) +
scale_fill_manual(values = c("firebrick2", "yellow2", "green3")) +
opts(title = paste("Animals, Bears and Polar Bears:\nOmaha Zoo", sep=""))
나는 말, 말,이 플롯의 오른쪽 아래 모서리를 목록을 추가 할 ,
Animals: 50
Bears: 10
PolarBears: 3
그러나 나는 그 방법을 알 수 없습니다. 지금까지 annotate()
으로 나의 노력은 부분적으로 극좌표에 의해 저지되었습니다. 타이틀에 번호를 추가해야만한다면 더 좋은 해결책을 원할 것입니다. 미리 감사드립니다.
EDIT : 다음 사람에게 중요한 메모 : 불스 아이는 극좌표에 매핑 된 막대 그림입니다. 막대 그래프의 ggplot2 기본값은 눈에 띄게 막대 그래프를 쌓아 올리는 것입니다. 그러나 이는 귀하의 땡기 반지도 겹쳐서 표시된다는 것을 의미합니다 (예 : 반경이 가장 큰 그룹의 크기 대신에 3 개의 그룹 63의 합계 인 50). I 은 대부분의 사람들이 불스 아이 음모로 기대하는 것, 특히 그룹이 중첩되어 있다고 생각하는 것입니다. geom_bar(position = position_identity())
을 사용하면 스택 링을 계층화 된 원으로 바꿀 수 있습니다.
편집 2 : 예 ggplot2 문서에서 :
필요없이이 사과로 귀하의 질문에. 좋은 질문과 나는 대답을 읽는 것을 배웠다. –
땡기를 플로팅하는 것에 대해 주로 사과해야합니다. 특히 시리즈에서는 특히 그렇습니다. 바브 Plot은 (적어도 나를 위해) 비교하기가 훨씬 쉽습니다. –