echarts4r日历如何设置本地月份名称

How to set the local month names in echarts4r calendar

有没有办法将echarts4r日历中日期的语言设置为当地时间?

这是获取冰岛语缩写月份名称的方法,但在 echarts4r 日历中它仍然是英文的。

Sys.setlocale("LC_TIME", "Icelandic")
format(Sys.time(), '%d %b %Y')

我也试过了Sys.setenv(LANGUAGE = "is")

这是我正在使用的示例日历:

dates <- seq.Date(as.Date("2017-01-01"), as.Date("2018-12-31"), by = "day")
values <- rnorm(length(dates), 20, 6)
year <- data.frame(date = dates, values = values)
year %>% 
  e_charts(date) %>% 
  e_calendar(range = "2018") %>% 
  e_heatmap(values, coord_system = "calendar") %>% 
  e_visual_map(max = 30) %>% 
  e_title("Calendar", "Heatmap")

事实上,echarts 中有一个选项:

https://echarts.apache.org/en/option.html#calendar.monthLabel.nameMap

您可以在 nameMap 中为日期和月份标签指定语言。

我已经尝试在 R for french 中使用 monthLabel 参数列表中的以下选项:nameMap = 'fr' 但它似乎不起作用。

这是一个使用 lubridate fonction month 的法语解决方案。 (对于日标签几乎相同,我将星期一作为第一天并手动设置法语日缩写)。

我添加了一个格式化程序来在 e_tooltip 中悬停时打印日期和值。

library(lubridate)
library(dplyr, warn.conflicts = FALSE)
library(echarts4r)

temp_data %>% 
  mutate(value_to_plot = ifelse(value_to_plot == 0, NA, value_to_plot)) %>% 
  e_charts(DATE_J) %>% 
  e_calendar(range = "2020",
             top="60", 
             left = 150, 
             dayLabel = list(
                        firstDay=1, 
                        nameMap = c('Di', 'Lu', 'Ma', 'Me', 'Je', 'Ve', 'Sa')),
             monthLabel = list(
                          nameMap = month(1:12, label = TRUE, abbr = FALSE))) %>%
  e_heatmap(value_to_plot, coord_system = "calendar") %>% 
   e_visual_map(min = 1L, max = max(temp_data$value_to_plot), top = 130, left = 15) %>% 
  e_tooltip(formatter = htmlwidgets::JS("
                                    function(params){
                                    return(params.value[0] + ': ' + params.value[1])
                                    }
                                    ")) %>% 
            e_title("Title", "Subtitle")

echarts with french date labels

纪尧姆