vctls/php-interval-graph

一个用于操作和显示加权区间数组的简单工具。

v1.4.1 2021-06-29 18:18 UTC

README

Build Status Quality Gate Coverage Scrutinizer Code Quality

一个用于操作和显示加权区间数组的简单工具。

它将不连续和重叠的加权区间数组转换为相邻区间数组,并计算其总权重。

它最初是为携带简单数值的日期区间而制作的,但你也可以传递自己的闭包以使其支持你想要的一切。

它可以以基本兼容的方式显示一段时间内的可用率等。

基本用法

  1. 创建一个区间数组。第一个值应该是下限,第二个值应该是上限,第三个值应该是区间的值或'权重'。

  2. 从区间创建一个新的IntervalGraph对象。

  3. 打印它!你可以显式调用draw()方法,或者直接echo它。__toString()方法也会调用draw()

<?php
use Vctls\IntervalGraph\IntervalGraph;

$intervals = [
    [new DateTime(2018-01-01), new DateTime(2018-01-04), 0.3],
    [new DateTime(2018-01-02), new DateTime(2018-01-05), 0.5],
    [new DateTime(2018-01-03), new DateTime(2018-01-06), 0.2],
];

$intervalGraph = new IntervalGraph($intervals);

echo $intervalGraph;

查看index.php和演示以获取更多示例。

演示 : https://php-interval-graph-demo.herokuapp.com/index.php