2016-07-04 9 views
2

는 dygraphs에 대한 R의 패키지가, 그리고 주석을 추가 할 수 있습니다 : 그것은 가능한 방법으로 https://rstudio.github.io/dygraphs/gallery-annotations.html배수 주석

dygraph(presidents, main = "Quarterly Presidential Approval Ratings") %>% 
    dyAxis("y", valueRange = c(0, 100)) %>% 
    dyAnnotation("1950-7-1", text = "A", tooltip = "Korea") %>% 
    dyAnnotation("1965-1-1", text = "B", tooltip = "Vietnam") 

내가 좋아하는 것을 모든 주석을 구성하고 단일 dyAnnotation 옵션을 추가하기 위해 data.frame을 작성하십시오. 나는 시도했다 :

dygraph(presidents, main = "Quarterly Presidential Approval Ratings") %>% 
    dyAxis("y", valueRange = c(0, 100)) %>% 
    dyAnnotation(c("1950-7-1","1965-1-1"), text = c("A","B"), tooltip = c("Korea","Vietnam")) 

그것은 작동하지 않는다.

답변

2

이 같은 수행 할 수 있습니다 주석없이 기본 dygraph를 만들고 객체로 저장

단계 1. (정말 필요하지 않습니다하지만 2 단계에서 짧은 문자열 생성) :

dygraph(presidents, main = "Quarterly Presidential Approval Ratings") %>% 
    dyAxis("y", valueRange = c(0, 100)) -> graph 

단계 2. 주석을 위해 datestexts의 벡터를 두 개 만듭니다 (tooltips도 3 개 생성). 그런 다음 string 아래 작성 :

dates<-c("1950-7-1","1965-1-1","1972-1-1") 
texts<-c("a","bb","cc") 

my_code<-paste("graph %>%", 
paste0("dyAnnotation('",dates,"',text='",texts,"')",collapse = " %>% ")) 

당신은 같은 것을 얻을 것이다 :

"graph %>% dyAnnotation('1950-7-1',text='a') %>% dyAnnotation('1965-1-1',text='bb') %>% dyAnnotation('1972-1-1',text='cc')" 

단계 3. evalparse 기능 :

eval(parse(text = my_code)) 

Multiply annotations

당신이 원하는 경우 객체를 만드는 방법 이 그래프를 보려면 단계 2에서 string을 입력하십시오.

my_code<-paste("graph2<- graph %>%", 
    paste0("dyAnnotation('",dates,"',text='",texts,"')",collapse = " %>% "))