Создание индексной гистограммы в Highcharter - PullRequest
0 голосов
/ 03 марта 2020

Я пытаюсь создать столбчатую диаграмму, показывающую стоимость жизни, индексированную к значению США (100) в пакете Highcharter в R. Поэтому я хочу, чтобы столбцы начинались с 100 и продолжались вправо или влево от 100. У меня есть базовая гистограмма c вниз, но я не могу понять, как переместить центральную линию графика на 100. Я пытаюсь заставить ее выглядеть примерно так: http://drawingwithnumbers.artisart.org/moving-the-center-line-of-a-bar-chart-with-a-gantt-chart/

Вот данные, с которыми я работаю:

States <- c('Tennessee','Michigan','Indiana','Ohio','Kentucky','West Virginia','North Carolina','Virginia','Pennsylvania','Delaware','New Jersey','Maryland','New York')
Cost_of_Living <- c(88.7,88.9,90,90.8,90.9,91.1,94.9,100.7,101.7,108.1,125.1,129.7,139.1)
costliving <- data.frame(States, Cost_of_Living)

А вот код, который у меня есть для гистограммы, только базовая c гистограмма

costliving_graph <- highchart() %>% 
  hc_title(text = "Cost of Living by State (2020)") %>%
  hc_add_series (costliving, "bar", hcaes(x = States, y = Cost_of_Living)) %>%
  hc_xAxis(categories = costliving$States) %>%
  hc_yAxis(title = list(text = "Indexed to the U.S. (U.S. Value = 100)"))%>%
  hc_plotOptions (bar = list(colorByPoint = TRUE)) %>%
  hc_legend (enabled = FALSE)%>%
  hc_tooltip(pointFormat = "MSA Regional Price Parities: {point.y}", headerFormat ="")
costliving_graph

Любая помощь будет отличной! Заранее спасибо

1 Ответ

0 голосов
/ 04 марта 2020

После проверки примеров на веб-сайте Highcharter я изменил тип диаграммы на columnrange и добавил новые переменные low и high к кадру данных. Попробуйте это:

library(highcharter)
library(dplyr)

States <- c('Tennessee','Michigan','Indiana','Ohio','Kentucky','West Virginia','North Carolina','Virginia','Pennsylvania','Delaware','New Jersey','Maryland','New York')
Cost_of_Living <- c(88.7,88.9,90,90.8,90.9,91.1,94.9,100.7,101.7,108.1,125.1,129.7,139.1)
costliving <- data.frame(States, Cost_of_Living) %>% 
  mutate(low = pmin(Cost_of_Living, 100),
         high = pmax(Cost_of_Living, 100))

costliving_graph <- highchart() %>% 
  hc_title(text = "Cost of Living by State (2020)") %>%
  hc_add_series(costliving, "columnrange", hcaes(x = States, y = Cost_of_Living, low = low, high = high)) %>%
  hc_xAxis(categories = costliving$States) %>%
  hc_yAxis(title = list(text = "Indexed to the U.S. (U.S. Value = 100)"))%>%
  hc_plotOptions (bar = list(colorByPoint = TRUE)) %>%
  hc_legend (enabled = FALSE)%>%
  hc_tooltip(pointFormat = "MSA Regional Price Parities: {point.y}", headerFormat ="")
costliving_graph
...