sunburst.R总频率计数不正确

时间:2017-02-08 23:55:02

标签: r

我正在策划一个森伯斯特甜甜圈,我无法弄清楚为什么总数不正确。

var obj = {
  1:'Apple',
  2:'Chicken',
  3:'Carrots',
  4:'Mango',
  5:'Beef',
  6:'Squash'
}

$('#num').on('keyup',function() {
  var key = $(this).val(),
      result = obj[key],
      $category = $('#category')
  if (result != undefined) {
    $category.val(result);
  } else {
    $category.val('');
  }
})

应该是317的100%317。有人知道怎么修这个东西吗?这个伟大的包装上没有太多文件。

另外,我希望它在甜甜圈的中心有一个默认值。

enter image description here

如果还有其他方法可以使用R创建交互式甜甜圈,请告诉我。

提前谢谢你。

1 个答案:

答案 0 :(得分:3)

看起来在甜甜圈中心生成消息的默认函数将总值四舍五入到最接近的十位。

但您可以使用explanation sunburst参数自定义此功能。奇怪的是,自定义函数(在javascript中)必须以字符串形式提供。

尝试以下功能:

custom.message = "function (d) {
  root = d;
  while (root.parent) {
    root = root.parent
  }
  p = (100*d.value/root.value).toPrecision(3);
  msg = p+' %<br/>'+d.value+' of '+root.value;
  return msg;
}"

现在:

sunburst(reports, explanation = custom.message )

将生成显示确切总值的甜甜圈。不再需要count参数,因为它由默认解释函数使用。

custom.message返回的值是html代码。如您所见,我刚刚插入换行符(<br/>)。您可以修改msg返回值以进一步自定义外观。