簡體   English   中英

在PHP數據上創建flot

[英]Create flot on PHP data

我想基於php輸出創建一個浮點條形圖。 我設法從php輸出數據,但我也想使用標簽並在xaxis上顯示它們。 由於某種原因,以下代碼的輸出無效。 標簽會顯示,但條形圖和xaxis標簽不會顯示。

PHP:

function getOverview() {

    $arr[] = array(
        'label' => "Label 1", 
        'data' => array(0, 1)
    );
    $arr[] = array(
        'label' => "Label 2", 
        'data' => array(1, 2)
    );


    echo json_encode($arr);
}

輸出:[{“ label”:“標簽1”,“數據”:[0,1]},{“ label”:“標簽2”,“數據”:[1,2]}]

jQuery的:

$(document).ready(function(){

$.ajax({
    url: 'http://localhost/getOverview.php',
    method: 'GET',
    dataType:"json",
    success: onOutboundReveived
});

function onOutboundReveived(series)
{

    var options = {
        series: {
            bars: {
                show: true,
                barWidth: .1,
                align: 'center'
            }
        },
        xaxis: {
            tickSize: 1 
        }

    };

    $.plot("#chart_filled_blue", series, options);
}
});

誰能幫我?

您有幾個問題:

1.)系列數據必須是一個數組數組。 不只是一個數組:

'data' => array(array(1, 2))

當然,這是一個系列,可以有多個點(即使您有一個點)。

2.)要獲得xaxis標簽,您有兩個選擇。 一,使用類別插件。 二,手動提供勾號標簽

ticks: [[0, "zero"], [1.2, "one mark"], [2.4, "two marks"]]

在您的情況下,我只使用類別插件。 您需要將最終數據修改為:

{"label":"Label 1","data":[["Label 1",1]]}

或在PHP中:

$arr[] = array(
    'label' => "Label 1", 
    'data' => array(array("Label 1", 1))
);

這是一個小提琴

在此處輸入圖片說明

我認為您的輸出格式不正確。 嘗試這個:

[
    {
        label: "Label 1",
        data: [[0,1]]
    },
    {
        label: "Label 2",
        data: [[1,2]]
    }
]

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM