skeeks / yii2-widget-highcharts
为Yii 2框架提供的Highcharts小部件。
Requires
- yiisoft/yii2: *
This package is auto-updated.
Last update: 2024-08-29 04:12:42 UTC
README
轻松将Highcharts、Highstock和Highmaps图表添加到您的Yii2应用程序中。
关于
Highcharts
轻松为您的Web项目创建交互式图表。被成千上万的开发者使用,全球前100家大公司的59家公司也在使用,Highcharts是市场上最简单但最灵活的图表API。
Highstock
Highstock允许您使用纯JavaScript创建股票或一般时间线图表。包括高级导航选项,如小导航系列、预设日期范围、日期选择器、滚动和缩放。
Highmaps
构建交互式地图以显示销售、选举结果或与地理位置相关的任何其他信息。非常适合独立使用或在仪表板中使用,与Highcharts配合使用!
安装
安装此扩展的首选方式是通过composer。
运行以下命令:
php composer.phar require --prefer-dist skeeks/yii2-widget-highcharts "dev-master"
或添加以下内容到您的composer.json
文件的require部分:
"skeeks/yii2-widget-highcharts": "dev-master"
使用方法
首选方法(使用PHP数组)
要使用此小部件,将以下代码插入到视图文件中
use skeeks\widget\highcharts\Highcharts; echo Highcharts::widget([ 'options' => [ 'title' => ['text' => 'Fruit Consumption'], 'xAxis' => [ 'categories' => ['Apples', 'Bananas', 'Oranges'] ], 'yAxis' => [ 'title' => ['text' => 'Fruit eaten'] ], 'series' => [ ['name' => 'Jane', 'data' => [1, 0, 4]], ['name' => 'John', 'data' => [5, 7, 3]] ] ] ]);
通过配置options
属性,您可以指定需要传递给Highcharts JavaScript对象的选项。请参考Highcharts网站上的示例画廊和文档以获取可能的选项。
有关更多使用示例,请参阅/doc/examples。
替代方法(使用JSON字符串)
或者,您可以使用有效的JSON字符串代替关联数组来指定选项
Highcharts::widget([ 'options'=>'{ "title": { "text": "Fruit Consumption" }, "xAxis": { "categories": ["Apples", "Bananas", "Oranges"] }, "yAxis": { "title": { "text": "Fruit eaten" } }, "series": [ { "name": "Jane", "data": [1, 0, 4] }, { "name": "John", "data": [5, 7,3] } ] }' ]);
注意:当使用第二种选项时,您必须提供有效的JSON字符串(使用双引号)。您可以使用JSONLint快速在线验证您的JSON字符串。
仅资产
如果您只想在视图中包含Highcharts/Highstock/Highmaps JavaScript库,则可以绕过小部件并直接访问资产包。
use skeeks\widget\highcharts\HighchartsAsset; HighchartsAsset::register($this)->withScripts(['highstock', 'modules/exporting', 'modules/drilldown']);
在这种情况下,您需要编写并包含自己的JavaScript来显示图表,就像在Highcharts示例、Highstock示例和Highmaps示例页面上所示的那样。
技巧
-
如果需要在任何配置选项中使用JavaScript,请使用Yii的[[JsExpression]]对象。例如
... 'tooltip' => [ 'formatter' => new JsExpression('function(){ return this.series.name; }') ], ...
注意,这目前仅在首选方法中使用PHP关联数组时才可行。
-
Highcharts默认在图表的右下角显示一个小信用标签。可以使用以下顶级选项将其删除。
... 'credits' => ['enabled' => false], ...
-
必须通过顶级'scripts'选项启用所有适配器、模块、主题和补充图表类型。
... 'scripts' => [ 'highcharts-more', // enables supplementary chart types (gauge, arearange, columnrange, etc.) 'modules/exporting', // adds Exporting button/menu to chart 'themes/grid' // applies global 'grid' theme to all charts ], ...
有关可用脚本的列表,请参阅
vendor/skeeks/yii2-widget-highcharts/assets/
的内容。
Web开发从未如此有趣!
www.skeeks.com