【问题标题】:HoverCallback or tooltip equivalent for rCharts Morris bar charts?rCharts Morris 条形图的 HoverCallback 或工具提示等效项?
【发布时间】:2013-11-24 01:11:51
【问题描述】:

我希望这对外面的人来说是一个简单的问题。

我想使用 rCharts 创建一个带有自定义悬停的简单条形图。我找到了可以用来注释点图的示例代码,但不能用来注释条形图。

点图和条形图是使用不同的参考类(PolyCharts 与 Morris)构建的,但我希望语法可能相似,或者有人可以就如何通过 rCharts 设置 HoverCallback 属性提出建议。下面以代码sn-p为例。

require(rCharts)

sex = c("Male", "Female") 
ttl = c(4132,4399) 
pct = c(48.4, 51.6) 

dta = data.frame(sex,ttl,pct)

rp <- rPlot(pct ~ sex, data = dta, type = 'point', 
                  tooltip="function(item){return item.ttl +'\n' + item.pct}"
                  )
str(rp)
sp$guides(y = list(title = "", min=0,max = 100))
rp

# Bar Chart (Reference class = Morris)

mp <- mPlot(x = 'sex', y = c('ttl'), data = dta, type = "Bar",
            names.arg=c("Male","Female")
)

任何关于编码或我可以查看的文档的建议将不胜感激。

【问题讨论】:

    标签: javascript r rcharts


    【解决方案1】:

    以下是使用Morris 修改工具提示的方法。您可以使用代码here查看最终图表。

    mp <- mPlot(ttl ~ sex, data = dta, type = "Bar")
    mp$set(hoverCallback = "#! function(index, options, content){
      var row = options.data[index]
      return '<b>' + row.sex + '</b>' + '<br/>' +
         'ttl: ' + row.ttl + '<br/>' + 
         'pct: ' + row.pct
    } !#")
    mp
    

    尽管rCharts 试图提供跨多个可视化库的一致接口,但它通常仅限于数据和绘图美学。自定义是特定于每个可视化库的,并且在不同的库中是不同的。对于 MorrisJS,您可以直接在 Morris Website 上查找文档。任何选项都可以使用set 方法添加到图表中。

    您在上面的代码中看到的有趣的#!...!# 行是一种允许将函数等javascript 对象直接传递给HTML 的hack,否则它们将被转换为字符串。

    希望这会有所帮助。

    【讨论】:

    • 这正是我想要的。 hack 正是我在尝试设置 hoverCallback 选项时所缺少的。而且,感谢您如此迅速地回复 - 我非常喜欢 rCharts。
    猜你喜欢
    • 1970-01-01
    • 2023-03-28
    • 1970-01-01
    • 2019-03-31
    • 2023-03-18
    • 2013-07-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多