Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/372.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 如何获取生成的值并插入到图形中?_Javascript_Php_Canvasjs - Fatal编程技术网

Javascript 如何获取生成的值并插入到图形中?

Javascript 如何获取生成的值并插入到图形中?,javascript,php,canvasjs,Javascript,Php,Canvasjs,嗨,我是网页设计新手,我的一些行话可能是错的。我正在尝试为讲座创建一个图表,显示每个讲座的平均评分。我已经计算了18堂课的平均每堂课。现在,我想取每个的值,并将其作为值插入到图中 以下是我如何查询和输出我的讲座: 然后,OnLoadI执行以下操作: var chart=new CanvasJS.chart(“chartContainer”{ 主题:“主题1”, 标题:{ 课文:“平均课堂成绩” }, animationEnabled:没错, 数据:[ { //将类型更改为“条形”、“面积”、

嗨,我是网页设计新手,我的一些行话可能是错的。我正在尝试为讲座创建一个图表,显示每个讲座的平均评分。我已经计算了18堂课的平均每堂课。现在,我想取每个的值,并将其作为值插入到图中

以下是我如何查询和输出我的讲座:


然后,
OnLoad
I执行以下操作:

var chart=new CanvasJS.chart(“chartContainer”{
主题:“主题1”,
标题:{
课文:“平均课堂成绩”
},
animationEnabled:没错,
数据:[
{
//将类型更改为“条形”、“面积”、“样条曲线”、“饼图”等。
键入:“列”,
数据点:[
{标签:“讲座1”,y:4.5},
{标签:“讲座2”,y:4.5},
{标签:“讲座3”,y:5.0},
{标签:“第四讲”,y:5.0},
{标签:“讲座5”,y:5.0},
{标签:“讲座6”,y:5.0},
{标签:“第7讲”,y:5.0},
{标签:“讲座8”,y:5.0},
{标签:“第9讲”,y:5.0},
{标签:“第10讲”,y:5.0},
{标签:“第11讲”,y:5.0},
{标签:“第12讲”,y:5.0},
{标签:“第13讲”,y:5.0},
{标签:“第14课”,y:5.0},
{标签:“第15讲”,y:5.0},
{标签:“第16讲”,y:5.0},
{标签:“第17讲”,y:5.0},
{标签:“第18讲”,y:5.0},
]
}
]
});
chart.render();
和我的目标容器:



如何将数据库中的值用于CanvasJS图形?

我将这样做:

首先,在
while
循环之外创建一个数组。这将保存图形的总数据集。因此:

$dataset = array();
然后,在
while
循环中创建另一个数组。此数组将存储讲座名称及其平均评分。此数组将具有关联名称
标签
y
(在图表数据集中使用)

在循环结束时,将
$讲师EID
$讲师AVG
添加到该数组中。然后将其添加到
$dataset
数组中

$lectureRating['label'] = $lectureID;
$lectureRating['y'] = $lectureAvg;
array_push($dataset, $lectureRating);
while循环完成后,
$dataset
数组应具有与以下类似的结构:

Array[n] (
    [0] Array[2](
        ['label'] => "Lecture ID 1"
        ['y'] => 4.3
    )

    [1] Array[2](
        ['label'] => "Lecture ID 2"
        ['y'] => 3.7
    )

    // And so on
)
我们现在需要将其转换为Javascript对象(JSON),以便js能够对其进行解释。这是通过编码来完成的

$graphData = json_encode($dataset);
这会将上面的数组变成类似这样(看起来熟悉吗?):

然后可以将其输出到图表的
dataPoints
对象中

data: [
    {
        type: "column",
        dataPoints: <?php echo $graphData; ?>
    }
数据:[
{
键入:“列”,
数据点:
}
[{"label": "Lecture ID 1", "y": 4.3}, {"label": "Lecture ID 2", "y": 3.7}]
data: [
    {
        type: "column",
        dataPoints: <?php echo $graphData; ?>
    }