r ноль нулей вместо чисел в оси y - PullRequest
0 голосов
/ 22 мая 2019

Я получаю 0 значений по оси Y при построении discreteBarChart внутри renderChart (), Однако , появляется самое высокое значение yAxis (не 0), но также с некоторым странным форматом и запятыми (см. 2-й скриншот)с именем Диаграмма )

Я хочу построить 2 столбца в rCharts , ось x представляет собой символ (название страны) и ось yAxis числовой (Collective_Turnover) Я создал эту переменную (Collective_Turnover) из данных, это сумма Net_Turnover , которую я пытался указать как.numeric () перед этим, но все же, получая 0 на yAxis


data$countryname= as.character(data$countryname)

  output$top10countries <-renderChart({
    topcountries <- 
      arrange(data%>%  
                group_by(as.character(countryname)) %>% 
                summarise(
                  Collective_Turnover= sum(as.numeric(`Net turnover`))
                ), desc(Collective_Turnover))
    colnames(topcountries )[colnames(topcountries )=="as.character(countryname)"] <- "Country"

    topcountries <- subset(topcountries [1:10,], select = c(Country, Collective_Turnover))

    p <- nPlot(Collective_Turnover~Country, data = topcountries , type = "discreteBarChart", dom = "top10countries")
    p$params$width <- 1000
    p$params$height <- 200
    p$xAxis(staggerLabels = TRUE)
    # p$yAxis(axisLabel = "CollectiveTO", width = 50)
    return(p)
  })

Выходные данные topcountries в R представляют собой следующую таблицу:

topcountriesscreenshot

, который расположен в порядке убывания ... и график, который я получаю, таков: Chart Plot

1 Ответ

0 голосов
/ 07 июня 2019

Метки тиков усечены, потому что они слишком длинные. Вам нужно установить левое поле и отступы. Чтобы избавиться от запятых, используйте средство форматирования чисел.

dat <- data.frame(
  Country = c("Russian", "Italy", "Spain"), 
  x = c(12748613.6, 5432101.2, 205789.7)
)

p <- nPlot(x ~ Country, data = dat, type = "discreteBarChart")
p$yAxis(tickPadding = 15, tickFormat = "#! function(d) {return d3.format('.1')(d)} !#")
p$chart(margin = list(left = 100))
p

enter image description here

...