字形图例时间日期格式更改为包括星期几

问题描述 投票:1回答:1

您好,我正在使用R dygraphs软件包,并且希望能够将图例时间日期格式更改为包含星期几(即“%a”)

我看过dyOptionsdyLegend,但看不到任何可以帮助我的事情...

下面是一个简单的示例...但是理想情况下,希望它出现在闪亮的应用程序中...

library(dygraphs)
library(xts)
dygraph(xts(rnorm(100),Sys.time()+seq(100)),main='random_graph')
r shiny dygraphs
1个回答
0
投票

有可能。您需要为axisLabelFormatterdygraphs::dyAxis参数提供一个Javascript函数,该函数接受一个date参数并基于该日期返回一个字符串。该函数仅作为字符串传递。我不确定您是否可以访问导入笔形图的任何javascript库,因此为了简单起见,我提供了一个普通的javascript代码段,这些代码段以我假定的格式提供了日期。您可以使用javascript函数getYear()getFullYear()getHours() getMinutes()getSeconds()]轻松地对其进行扩展或修改。

library(dygraphs) library(xts) my_js <- 'function(d) { var d = new Date(d.getTime() + 7200*1000); var weekday = ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"]; var months = ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"]; var result = "" result += weekday[d.getDay()] + " " + d.getDate() result += " " + months[d.getMonth()] + " " + d.getFullYear(); return result; }' set.seed(69) dg <- dygraph(xts(rnorm(100), Sys.time() + seq(100)*10000), main = 'random_graph') dyAxis(dg, name = "x", axisLabelFormatter = my_js)

enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.