为categories Highcharts小部件中的任何元素创建链接

为categories Highcharts小部件中的任何元素创建链接,highcharts,yii2,href,Highcharts,Yii2,Href,我在view Yi2项目中使用了Highcharts小部件。我想为条形图(Highcharts小部件)上的类别标签创建URL,在我的代码中可以使用粗体标记,并且标签是粗体的,但当添加href标记时,我没有任何链接 如何在xAxis类别中创建href链接 <?php $x = array("a", "b", "c"); $y = array_values(array(4, 2, 6));

我在view Yi2项目中使用了Highcharts小部件。我想为条形图(Highcharts小部件)上的类别标签创建URL,在我的代码中可以使用粗体标记,并且标签是粗体的,但当添加href标记时,我没有任何链接

如何在xAxis类别中创建href链接

 <?php
                    $x = array("a", "b", "c");
                    $y = array_values(array(4, 2, 6));
                    echo Highcharts::widget([
                        'options' => [
                            'chart' => [
                                'type' => 'column',
                                'zoomType' => 'x',
                            ],
                            'title' => [
                                'text' => 'Project chart',
                            ],
                            'xAxis' => [
                                'categories' => $x, 
                                  'labels' => [
    'formatter' => new JsExpression('function(){ return "<a href=hghgh><b>"+this.value+" bgbgbg</b></a>"; }')
    ],
                                  'useHTML'=> 'true'

                            ],
                            'yAxis' => [
                                'title' => [
                                    'text' => 'Count',
                                ],
                            ],

                            'series' => [
                                [
                                    'type' => 'column',
                                    'name' => 'p1',
                                    'data' => $y,
                                ],
                            ],
                        ]
                    ]);
                    ?>

你需要看的东西很少

  • 您使用的是
    选项
    选项,而您应该使用
    客户端选项
    (如果您使用这个小部件,我想)
  • 您在错误的位置使用了
    useHtml
    ,它应该位于
    labels
    选项下,而不是
    categories
    ,您还应该将
    boolean
    传递给
    useHtml
    意味着不应传递引号
    true
  • 您的完整代码如下所示

    <?php
    
    use yii\web\JsExpression;
    use dosamigos\highcharts\HighCharts;
    
    $x = array("a", "b", "c");
    $y = array_values(array(4, 2, 6));
    
    echo HighCharts::widget([
        'clientOptions' => [
            'chart' => [
                'type' => 'column',
                'zoomType' => 'x',
            ],
            'title' => [
                'text' => 'Project chart',
            ],
            'xAxis' => [
                'categories' => $x,
                'labels' => [
                    'formatter' => new JsExpression('function(){ return "<a href=hghgh><b>"+this.value+" bgbgbg</b></a>"; }'),
                    'useHTML' => true,
                ],
            ],
            'yAxis' => [
                'title' => [
                    'text' => 'Count',
                ],
            ],
    
            'series' => [
                [
                    'type' => 'column',
                    'name' => 'p1',
                    'data' => $y,
                ],
            ],
        ],
    ]);
    

    我不知道yii2,但从Highcharts网站上看,需要将useHTML for xAxis标签更改为true,以启用HTML属性。很多时候,你的回答非常完美。