2016-11-02 11 views
0

У меня есть небольшая проблема о GGVIS в студии R.всплывающая подсказка в ggvis (R и блестящая)

Я хочу нарисовать что-нибудь и иметь больше информации о каждой точке, когда я нажимаю на нее курсор. Таким образом, я использую пакет GGVIS и функцию add_tooltip() для этого.

Однако, когда я запускаю код ниже, я получаю участок, но не дополнительную информацию, когда я перемещаю курсор на точки.

Кроме того, я хочу использовать отдельную функцию (tooltip_test), потому что мой реальный код немного сложнее, и функция мне очень помогла.

library(ggvis)  
test <- data.frame(ID=1:10, TIME=1:10, COUNTS=rep(1:2,5), EXTRA=c("A", "B", "C", "D", "E", "F", "G", "H", "I", "J")) 
    tooltip_test <- function(x) { 
     if (is.null(x)) return(NULL) 
     if(is.null(x$ID)) return(NULL) 

     sub_test = test[test$ID == x$ID, ] 
     paste0("Category: ", sub_test$EXTRA) 
    } 

    test %>% 
     ggvis(x= ~TIME, y= ~COUNTS) %>% 
     layer_points() %>% 
     add_tooltip(tooltip_test, "hover") 
+0

Вы забыли использовать 'key' аргумент в' ggvis' определить свой «ID» переменной (см. последний пример в документации 'add_tooltip'). – aosmith

ответ

0
library(ggvis)  
    test <- data.frame(ID=1:10, TIME=1:10, COUNTS=rep(1:2,5), EXTRA=c("A", "B", "C", "D", "E", "F", "G", "H", "I", "J")) 
    tooltip_test <- function(x) { 
     if (is.null(x)) return(NULL) 
    paste0('Category: ', test$EXTRA[x$ID]) 
    } 

test %>% 
    ggvis(x= ~TIME, y= ~COUNTS, key := ~ID) %>% 
    layer_points() %>% 
    add_tooltip(tooltip_test, "hover") 

этого должно быть достаточно для вас, у забыл добавить ID в качестве ключа в реализации ggvis

 Смежные вопросы

  • Нет связанных вопросов^_^