1

我在 Yii 框架中创建具有两层的 HighChart 圆环图时遇到问题。这是我用于获取单层图表的代码:

<?php 
$this->widget('bootstrap.widgets.TbHighCharts', array(

   // .. 'options', 'chart', 'legend', .. 

   'series' => array(
   array(
      'type' => 'pie',
      'name' => 'Series of Browsers',
      'data' => array(array('MSIE', 55), array('Firefox',10), array('Chrome',15), array('Safari', 20)),
   ),

   // ..
?>

但在 highchart 网站上,我只能找到有关如何实现“向下钻取”的 java 示例。你有在 Yii 的 php 中实现相同的解决方案吗?

在此先感谢您的帮助!

- 编辑 -

在java中我必须做这样的事情:

drilldown: {
   name: 'MSIE',
   categories: ['MSIE 6.0', 'MSIE 7.0', 'MSIE 8.0', 'MSIE 9.0'],
   data: [10.85, 7.35, 33.06, 2.81]
}

但是在 Yii 中使用小部件时的等效操作是什么?

4

1 回答 1

1

毕竟是我自己发现的。希望这个答案也可以帮助其他人。

<?php 
  $this->widget('bootstrap.widgets.TbHighCharts', array(

    'chart' => array(
      'borderColor'=>'#e5e5e5',
      'type' => 'pie',
    ),

    // .. 'options', 'legend', .. 

    'series' => array(
      // --------- inner layer of the pie
      array(
        'size' => '40%',
        'data' => array(
          array(
            'name' => //name
            'y' => //value
          ),
          array(
            'name' => //name
            'y' => //value
          ),
        ),
     ),
     // -------- second layer from the inside
     array(
        'size' => '60%',
        'innerSize' => '40%',
        'data' => array(
          array(
            'name' => //name
            'y' => //value
          ),
          array(
            'name' => //name
            'y' => //value
          ),
        ),
     ),
     // ----- add as manny layers as you need to
    ),
    // ..
  );
?>

请注意,因为图层之间没有直接链接。这意味着您必须明智地设置值 'y' 以使层之间的边界匹配。

于 2013-06-19T14:21:00.443 回答