динамическая фильтрация с помощью input_select () с использованием ggvis в R

Я использую встроенную базу данных "кокаина", которая поставляется сggvis упаковка в R, чтобы визуализировать количество потенции кокаина в каждом состоянии. Пакет Rdplyr также был использован.

Вот первые шесть строкcocaine Набор данных:

 state potency weight month price
1    WA      77    217     1  5000
2    CT      51    248     1  4800
3    FL      68     43     1  3500
4    OH      69    123     1  3500
5    MS      75    118     1  3400
6    VA      73    127     1  3000

Целью было использоватьinput_select()в пакете ggvis создать раскрывающееся меню, в котором можно выбрать различные состояния и посмотреть гистограмму подсчета активности для этого состояния. Нам удалось сделать это с помощью этого кода:

state <- as.vector(unique(cocaine$state))

cocaine %>%
          ggvis(~potency) %>%
            filter(state == eval(input_select(
            choices = state,
            selected = "NY",
            label = "State"))) %>%
          layer_histograms(binwidth = 2)

Вопрос в том, почему именно нам нужно выражениеinput_select() быть "оцененным"eval(). Догадка может быть, потому чтоfilter это функция изdplyr пакет и, следовательно, не общается в окружающей среде сggvis; eval поэтому инициализирует его в пределахggvis среда. Возможно, кто-то может присоединиться к концепции, которая может помочь нам визуализировать это?

Ответы на вопрос(0)

Ваш ответ на вопрос