파티 편광 (something like this)에 대한 일부 데이터를 조사 중이며 geom_dumbbell
은 ggalt
과 ggplot2
입니다. 계속해서 동일한 aes
오류 및 포럼의 다른 솔루션이이를 효과적으로 처리하지 못했습니다. 이것은 나의 샘플 데이터입니다. 미학은 길이가 1이거나 데이터 (1)과 같아야합니다. x, y, 레이블
df <- data_frame(policy=c("Not enough restrictions on gun ownership", "Climate change is an immediate threat", "Abortion should be illegal"),
Democrats=c(0.54, 0.82, 0.30),
Republicans=c(0.23, 0.38, 0.40),
diff=sprintf("+%d", as.integer((Democrats-Republicans)*100)))
는 그래서, 플롯의 순서를 유지하고 싶었
factor
로 정책을 전환하고 첫 번째 줄에 표시 할 %를 원했다.
df <- arrange(df, desc(diff))
df$policy <- factor(df$policy, levels=rev(df$policy))
percent_first <- function(x) {
x <- sprintf("%d%%", round(x*100))
x[2:length(x)] <- sub("%$", "", x[2:length(x)])
x
}
은 그 때 나는 내가 원하는 것을 가까이에 뭔가를 렌더링 ggplot을 사용했다.
gg2 <- ggplot()
gg2 <- gg + geom_segment(data = df, aes(y=country, yend=country, x=0, xend=1), color = "#b2b2b2", size = 0.15)
# making the dumbbell
gg2 <- gg + geom_dumbbell(data=df, aes(y=country, x=Democrats, xend=Republicans),
size=1.5, color = "#B2B2B2", point.size.l=3, point.size.r=3,
point.color.l = "#9FB059", point.color.r = "#EDAE52")
나는 다음 두 점 (like this를) 레이블 위에 Democrat
및 Republican
을 읽기 위해 아령을 원했다. 이것은 오류가 발생하는 곳입니다.
gg2 <- gg + geom_text(data=filter(df, country=="Government will not control gun violence"),
aes(x=Democrats, y=country, label="Democrats"),
color="#9fb059", size=3, vjust=-2, fontface="bold", family="Calibri")
gg2 <- gg + geom_text(data=filter(df, country=="Government will not control gun violence"),
aes(x=Republicans, y=country, label="Republicans"),
color="#edae52", size=3, vjust=-2, fontface="bold", family="Calibri")
내가 잘못하고있는 것에 대한 의견이 있으십니까?
곳 '에서 오는 country'는 무엇입니까? – Nate
'gg' 또는'gg2'를 참조하려고합니까?! – bouncyball
'aes' 호출은'data'에 정의 된 변수를 받아들입니다.'label = "Republicans"'변수는 아니지만 상수 문자열입니다. 따라서 오류 – missuse