namelesscoder / numerolog-lavacharts
为Numerolog数据源提供图表渲染器
Requires
- khill/lavacharts: ^2.5
- namelesscoder/numerolog: ^1.2
Requires (Dev)
README
作为访问Numerolog计数器并将其作为图表渲染的瘦客户端,使用Lavacharts库(https://github.com/kevinkhill/lavacharts),它反过来又使用Google强大的Charts包(https://developers.google.com/chart/interactive/docs)。客户端使用令牌从Numerolog包中提取值,然后将数据集作为图表渲染。支持Google Charts的所有图表类型和选项。
由于基于JavaScript,该图表包显然仅限于基于浏览器的使用。
安装
使用composer
composer require namelesscoder/numerolog-lavacharts
使用方法
然后可以手动调用方法,并以数组作为输入从任何地方集成
$query = new \NamelessCoder\NumerologLavacharts\ChartQuery($_GET); $chart = new \NamelessCoder\NumerologLavacharts\NumerologChart(); echo $chart->renderChartQuery($query);
或者,手动配置ChartQuery进行相同的操作
$query = new \NamelessCoder\NumerologLavacharts\ChartQuery(); $query->setChartLabel('My special chart'); $query->setChartHeight(400); $query->setChartWidth(800); $chart = new \NamelessCoder\NumerologLavacharts\NumerologChart(); echo $chart->renderChartQuery($query);
输出将包括包含图表的 <div>
以及Google Charts渲染图表所需的每个依赖项。图形数据被转换为嵌入在HTML中的JavaScript数组。
集成
要在除生成图表的主机之外的任何地方渲染图表 - 例如,如果您正在使用公共Numerolog端点 - 简单地加载HTTP请求的响应体,并将其输出到您自己的HTML文档中。下面的示例是该原理的极其基本的实现
<html> <head>My chart document</head> <body> <?php file_get_contents('http://numerolog....'); ?> </body> </html>
由于默认输出已经包含 <script>
标签和 <div>
,在图表显示之前无需做任何其他事情。更改URL参数以影响图表本身的渲染方式 - 以下说明!
公共实现
公共图表渲染器可通过以下方式获得
http://numerolog.namelesscoder.net/chart.php
它接受普通的 GET
参数
{url}?package={package}&token={token}&action=get&counter={counter}
以及基本的图表配置的本地参数
{url}?chartWidth=120&chartHeight=400&chartLabel=Number%20of%20carcrashes
以及特殊的 chartAttributes
(对应Google图表配置)
{url}?chartAttributes[pointSize]=10&chartAttributes[vAxis][title]=Year
并且它们都必须一起指定。必需的参数是
package
counter
token
action
(仅支持get
)
以及以下其他参数的引用
请注意,您可以使用Google图表选项将始终取决于您正在渲染的图表类型。