Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/286.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript C3图表错误/错误-折线图之后的步骤_Javascript_Php_Graph_C3.js - Fatal编程技术网

Javascript C3图表错误/错误-折线图之后的步骤

Javascript C3图表错误/错误-折线图之后的步骤,javascript,php,graph,c3.js,Javascript,Php,Graph,C3.js,我正在创建一个图表,在一种情况下,直线下降到某个%的水平,在第二种情况下,它应该创建垂直线,并在从左到这一点的同一水平上继续 因为它是“之后的步骤”类型,所以逻辑应该是直接向前=>在X上移动,直到到达下一个点,然后从上一个Y更改为新的Y并重复 但这种逻辑似乎不起作用,如下图所示 图形数据在PHP代码中生成: ... foreach ($parsedData as $d) { if (!$d['survival']) { // LEVEL DRO

我正在创建一个图表,在一种情况下,直线下降到某个%的水平,在第二种情况下,它应该创建垂直线,并在从左到这一点的同一水平上继续

因为它是“之后的步骤”类型,所以逻辑应该是直接向前=>在X上移动,直到到达下一个点,然后从上一个Y更改为新的Y并重复

但这种逻辑似乎不起作用,如下图所示


图形数据在PHP代码中生成:

...
    foreach ($parsedData as $d) {

        if (!$d['survival']) {
            // LEVEL DROP SCENARIO 
            $maxY = $maxY - (1 / count($parsedData)) * 100;
            $maxY = ($maxY < 0) ? 0 : $maxY;
        } else if ($type == StatsChartMaker::TYPE_FULL) {
            // CREATES VERTICAL LINE
            array_push($series[$id]['Y'], $maxY + 2);
            array_push($series[$id]['X'], $d['time']);
            array_push($series[$id]['Y'], $maxY - 2);
            array_push($series[$id]['X'], $d['time']);
        }
        array_push($series[$id]['X'], $d['time']);
        array_push($series[$id]['Y'], $maxY);
    }
...

库可能会使用某种不稳定的排序算法,根据点的X坐标对点进行重新排序。尝试:

array_push($series[$id]['Y'], $maxY + 2);
array_push($series[$id]['X'], $d['time'] - 0.002);
array_push($series[$id]['Y'], $maxY - 2);
array_push($series[$id]['X'], $d['time'] - 0.001);
或其他适当的小偏移量