1
我試圖用https://plot.ly/javascript/繪製PHP
數據庫的輸出結果PHP
。我需要的輸出進行格式化這樣的 -如何以可繪製表格格式輸出PHP結果
var data = [
{
x: ['giraffes', 'orangutans', 'monkeys'],
y: [20, 14, 23],
type: 'bar'
}
];
這是目前我使用讓我輸出的代碼 -
#PHP
$x = array();
$y = array();
while($query_result = $result->fetch_assoc()) {
$x[] = $query_result['Animal'];
$y[] = $query_result['Count'];
}
print_r($y);
#Javascript
$.get('../assets/php/Animals.php', function(data) {
Plotly.newPlot('AnimalChart', data);
});
但它返回這樣的數據 -
Array
(
[0] => 20
[1] => 14
[2] => 23
)
我也試過json_encode
這樣 -
$rows = array();
while($query_result = $result->fetch_assoc()) {
$rows[] = $query_result;
}
echo json_encode($rows);
但輸出是這樣的,這不符合預期的情節格式 -
[{"Animal":"giraffes","Count":"20"},
{"Animal":"orangutans","Count":"14"},
{"Animal":"monkeys","Count":"23"}]
在這兩種情況下,Plot.ly
返回一個錯誤,這就是爲什麼我認爲它需要像第一個例子進行格式化。
Uncaught TypeError: Cannot read property 'selectAll' of undefined
謝謝,這完美! –
JS中'null'的目的是什麼? –
[$ .get](https://api.jquery.com/jquery.get/)接受4個參數,'url [,data] [,success] [,dataType]'我知道jQuery通常足夠聰明地推斷你通過它們的值發送了哪些參數,但我更願意更加明確地確定它是100%的。 'null'對應於你的PHP腳本不需要的'data'參數。 – apokryfos