Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

rCharts rNVD3 tooltip customisation

I have the following problem; I am using the rCharts wrapper around NVD3 to produce a simple line chart. I wish to modify the default tootip behavior. Using the NVD3 library I have been able to do this with the following code;

.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">'
  })

This shows different thumbnails for different values of the x label. My question is as follows; Is it possible to implement the above with rCharts as it stands or will I have to modify the source?

like image 956
Joe Avatar asked Dec 16 '22 08:12

Joe


1 Answers

Here is a minimal example on how to specify a tooltip in rCharts for NVD3. Any JS literals you want to pass from R, including JS functions need to be wrapped between #! and !# tags so that R knows not to convert them into strings during conversion to JSON. The chart output can be seen here 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 
} !#")

In general, any chart method chart.x(y) translates to n1$chart(x = y) in rCharts, with y being decorated with tags if required.

Hope this helps.

like image 68
Ramnath Avatar answered Dec 28 '22 11:12

Ramnath