임 그룹화 변경하는 방법 : 해당 게시물에서 How to produce stacked bars within grouped barchart in R수동으로 누적 + 그룹화 ggplot 막대 차트의 단지 스택 부분 그룹화 및 누적 막대 차트의 작성이 게시물에 주어진 예를 들어 다음과 같은
을 :
를library(reshape2)
library(dplyr)
library(ggplot2)
test <- data.frame(person=c("A", "B", "C", "D", "E"),
value1=c(100,150,120,80,150),
value2=c(25,30,45,30,30) ,
value3=c(100,120,150,150,200))
melted <- melt(test, "person")
melted$cat <- ''
melted[melted$variable == 'value1',]$cat <- "first"
melted[melted$variable != 'value1',]$cat <- "second"
ggplot(melted, aes(x = cat, y = value, fill = variable)) +
geom_bar(stat = 'identity', position = 'stack') +
facet_grid(~ person)
위와 같이 플롯은 value3의 맨 위에 value2를 정렬합니다.
내가하려는 것은 스택 부분의 순서를 변경하는 것입니다. value2를 value2 위에 놓고 싶습니다.
필자 수동 가변 순서 변경 시도 :
melted2 <- melted %>%
arrange(desc(variable))
ggplot(melted2, aes(x = cat, y = value, fill = variable)) +
geom_bar(stat = 'identity', position = 'stack') +
facet_grid(~ person)
을하지만 플롯 출력 첫번째 동일 보인다. 본질적으로, 입력 데이터의 재정렬은 그 작업을 성취하지 못합니다.
미리 감사드립니다.
[ggplot2에서 ID를 사용하여 누적 막 대형 차트의 순서를 제어하는 방법] (http://stackoverflow.com/questions/32345923/how-to-control-ordering-of-stacked-bar-chart-using) -identity-on-ggplot2) 또는 [this] (http://stackoverflow.com/questions/8186436/order-stacked-bar-graph-in-ggplot) 또는 [해당] (http://stackoverflow.com/questions/7150453/order-categorical-data-in-a-stacked-bar-plot-ggplot2) – Jimbou
내 게시물을 읽으십시오. 나는 그 포스트에서 보여지는 것처럼 재정렬을 시도했다. –
레벨을 재정렬했다는 표시는 없습니다. 바로 값입니다. 명시 적으로 요인 수준을 주문해야합니다. '? factor' 또는'? reorder'를 시도하십시오. –