2013-07-08 30 views
4

我有以下问题;我在NVD3周围使用rCharts包装来产生一个简单的折线图。我希望修改默认的tootip行为。使用NVD3库,我可以用下面的代码来完成这个工作。rCharts rNVD3工具提示定制

.tooltipContent(function(key,x ,y,e,graph){ 
    var idx = x.replace("s","") 

    var thumbPath = 'snap_' + idx + '.png' 
    return '<h3>' + key + '</h3>' + 
    '<p>' + y + ' at ' + x + '</p>' + 
    '<img src="'+ thumbPath+ '" alt="some_text">' 
    }) 

这显示了x标签的不同值的不同缩略图。我的问题如下:是否有可能用rCharts实现上述目标,还是需要修改源代码?

回答

12

这是关于如何在rCharts中为NVD3指定工具提示的最简单示例。您希望从R传递的任何JS文字,包括JS函数都需要包装在#!!#标记之间,以便R知道在转换为JSON期间不会将它们转换为字符串。图表的输出可以在这里http://rcharts.io/viewer/?5948336

require(rCharts) 
n1 <- nPlot(mpg ~ wt, group = 'gear', data = mtcars, type = 'scatterChart') 
n1$chart(tooltipContent = "#! function(key, x, y){ 
    return 'x: ' + x + ' y: ' + y 
} !#") 

通常看到的那样,任何图表方法chart.x(y)转化为n1$chart(x = y)在rCharts,与y如果需要的话与标签被装饰。

希望这会有所帮助。

+0

感谢Ramnath的快速反应。爱图书馆! – Joe

+0

太棒了!您也可以在rCharts的github页面上发布任何问题。 – Ramnath

+0

我将来一定会这样做! – Joe