gpt4 book ai didi

javascript - 将 JSON 数据从 PHP 数组传递到 ChartJS

转载 作者:行者123 更新时间:2023-12-02 16:24:08 25 4
gpt4 key购买 nike

因此,我根据从 WordPress 高级自定义字段中提取的数据创建了一个 PHP 数组:

<?php
$chartArray = array();
forEach($cat_meta as $key => $value) {
$chartArray[] = array($value['star_rating']);
}
echo json_encode($chartArray);
?>

这会在页面上输出以下内容:

[["2"],["4"],["1"],["3"],["5"]]

我想做的是将结果放入 ChartJS 文件的数据变量中:

var radarChartData = {
labels: ["Price", "Speed", "Format", "Size", "User Experience"],
datasets: [
{
label: "My First dataset",
fillColor: "rgba(220,220,220,0.2)",
strokeColor: "rgba(224,07,19,1)",
pointColor: "rgba(224,07,19,1)",
pointStrokeColor: "#fff",
pointHighlightFill: "#fff",
pointHighlightStroke: "rgba(224,07,19,1)",
data: [5, 4, 5, 5, 1, 3] // data needs to replace this
}
]
};

var ctx = document.getElementById('RadarChart').getContext('2d');
var myRadarChart = new Chart(ctx).Radar(radarChartData);

我是一名 PHP/Javascript 新手,所以我希望有人能够为我阐明这一点。或者也许有更好的方法来做到这一点?预先感谢您。

最佳答案

将数组中的 JS 对象/数据存储为 PHP 中的字符串并打印它。

<?php

// start script
$str = '<script>';
// start chart
$str .= 'var radarChartData = {';
// make labels
$str .= 'labels: [';
$delimiter = '';
foreach($chartArray as $key => $val){
$str .= $delimiter.'"'.$key.'"';
$delimiter = ', ';
}
// make dataset
$str .= '], datasets: [{';
$str .= 'label: "My First dataset", ';
$str .= 'fillColor: "rgba(220,220,220,0.2)", ';
$str .= 'strokeColor: "rgba(224,07,19,1)", ';
$str .= 'pointColor: "rgba(224,07,19,1)", ';
$str .= 'pointStrokeColor: "#fff", ';
$str .= 'pointHighlightFill: "#fff", ';
$str .= 'pointHighlightStroke: "rgba(224,07,19,1)",';
$str .= 'data: [';
$delimiter = '';
foreach($chartArray as $key => $val){
$str .= $delimiter.$val;
$delimiter = ', ';
}
$str .= ']}]};';
// end script
$str .= "</script>";
// print
print $str;

?>

<canvas id='RadarChart' class='chart' width='400px' height='400px'></canvas>

<script>
var ctx = document.getElementById('RadarChart').getContext('2d');
var polar_big5 = new Chart(ctx).Radar(radarChartData);
</script>

关于javascript - 将 JSON 数据从 PHP 数组传递到 ChartJS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28856988/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com