我是一个简单的R编码器,几乎没有使用HTML编写HTML的经验,所以我很难理解工具提示自定义代码的包装。
我有2个时间序列,我用rCharts lineWithFocusChart绘制,现在我想自定义工具提示,如下所示: http://shiny.rstudio.com/gallery/nvd3-line-chart-output.html
到目前为止,这是我的代码:
shinyServer(function(input, output) {
output$myChart <- renderChart({
select<-as.numeric(input$radioTS)
out <- data.frame(Actuals[,select], Fits[,select], mmmyyyy)
colnames(out) <- c("Actuals","Fits","Date")
data<-melt(out,id.vars = 'Date')
data$Date <- as.numeric(as.POSIXct(data$Date)) * 1000
p1 <- nPlot(
value ~ Date,
group = 'variable',
data = data,
type = 'lineWithFocusChart',
width = 650,
height = 500
)
p1$addParams(dom = 'myChart')
p1$xAxis(tickFormat = "#!function(d) {return d3.time.format('%b %Y')(new Date(d))}!#")
p1$x2Axis(tickFormat = "#!function(d) {return d3.time.format('%Y')(new Date(d))}!#")
p1$yAxis(tickFormat = "#!function(d) {return d3.format('0,.0')(d)}!#")
return(p1)
})
})
答案 0 :(得分:0)
引用的闪亮示例使用nvd3 interactiveGuideline
功能。要在rCharts中使用此功能,您可以p1$chart(useInteractiveGuideline=TRUE)
,但由于此nvd3 issue lineWithFocusChart
尚未提供此功能,因此目前我们仅限于lineChart
。
不幸的是,nvd3目前不支持自定义interactiveGuideline,因为此pull request尚未被接受。但是,您可以通过正确的命名获得相当不错的工具提示,如example所示。
shinyServer(function(input, output) {
output$myChart <- renderChart({
select<-as.numeric(input$radioTS)
out <- data.frame(Actuals[,select], Fits[,select], mmmyyyy)
colnames(out) <- c("Actuals","Fits","Date")
data<-melt(out,id.vars = 'Date')
data$Date <- as.numeric(as.POSIXct(data$Date)) * 1000
p1 <- nPlot(
value ~ Date,
group = 'variable',
data = data,
type = 'lineChart', # see explanation for why not lineWithFocusChart
width = 650,
height = 500
)
p1$addParams(dom = 'myChart')
p1$xAxis(tickFormat = "#!function(d) {return d3.time.format('%b %Y')(new Date(d))}!#")
#commented x2Axis out since only lineChart
#p1$x2Axis(tickFormat = "#!function(d) {return d3.time.format('%Y')(new Date(d))}!#")
p1$yAxis(tickFormat = "#!function(d) {return d3.format('0,.0')(d)}!#")
p1$chart(useInteractiveGuideline = TRUE)
return(p1)
})
})