전에 R에서 색상을 매핑했습니다. 하지만 뭔가 클릭이되지 않습니다. 이상적으로는 색상 이름을 변수 값 "student"에 매핑하고 싶지만 길이 오류가 발생합니다. 그러나 색상에 매핑되는 학생의 수는 동일합니다. 또한 문자열과 ID로 두 개의 개별 색상 열을 만들려고했습니다. 그러면 색상이 범례에 표시됩니다. 수동 스케일 색상 옵션을 추가하는 것은 많은 일을하지 않습니다.
다음은 데이터 샘플입니다.
m3 <- structure(list(student = structure(c(7L, 11L, 9L, 2L, 8L, 4L), .Label = c("a","b", "c", "d", "e", "f", "g","h", "i", "j", "k", "l", "m", "n","o", "p"), class = "factor"), colorz = structure(4:9, .Label = c("#66CC99","#9999CC", "#CC6666", "#FF0000FF", "#FF2000FF", "#FF4000FF","#FF6000FF", "#FF8000FF", "#FF9F00FF", "#FFBF00FF", "#FFDF00FF","#FFFF00FF", "green", "red"), class = "factor"), variable = structure(c(1L,1L, 1L, 1L, 1L, 1L), .Label = c("pre", "c1", "c2","b1", "c3", "c4", "b2", "u1", "u2","u3", "u4", "total"), class = "factor"), value = c(3, 31,49, 88, 31, 40), col = c("#FF0000FF", "#FF2000FF", "#FF4000FF","#FF6000FF", "#FF8000FF", "#FF9F00FF")), .Names = c("student","colorz", "variable", "value", "col"), row.names = c(NA, 6L), class = "data.frame")
그리고 다음으로 그래프를 작성합니다. ggplot(m3, aes(x=variable, y=value, group=student,linetype=student)) + geom_line(size=.75) + geom_point(size=2) + xlab("test") + ylab(paste("score")) + geom_hline(yintercept=70, linetype="dashed", size=3) + theme(axis.text.x = element_text(angle = 45, hjust = 1)) + scale_color_identity()
예제는 실제 데이터보다 훨씬 작습니다. 이상적으로는 다음과 같은 것을 사용할 수 있기를 바랍니다.color.names <- setNames( c( "#FF0000FF", "#FF2000FF", "#FF4000FF", "#FF6000FF", "#FF8000FF", "#FF9F00FF","#CC6666", "#9999CC", "#66CC99", "#FFBF00FF", "#FFDF00FF", "#FFFF00FF","green","red"), c("a","b","c", "d","e","f","g","h","i","j","k","l","m","n" ))
색상을 호출합니다. 나는 무엇을 엉망으로 만드는지 잘 모르겠습니다. 12 개의 색상을 14 개의 값에 매핑하려는 것처럼 보일 수 있지만 14 개도 시도했습니다.
먼저 이와 같이 학생에게 색상을 할당 aes(color = student)
하고 scale_color_manual()
대신 사용하십시오. 이미 색 벡터의 이름을 지정 했으므로 ggplot은 이름을 기준으로 일치를 처리합니다. 이름이 팔레트에 없으면 해당 값이 삭제되고 플로팅되지 않습니다.
ggplot(m3, aes(x=variable, y=value, group=student, linetype=student, color = student)) +
geom_line(size=.75) + geom_point(size=2) + xlab("test") +
ylab(paste("score")) + geom_hline(yintercept=70, linetype="dashed", size=3) +
theme(axis.text.x = element_text(angle = 45, hjust = 1)) +
scale_color_manual(values = color.names)
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다