douzi1350 2016-08-10 13:47
浏览 50

如何将关联数组传递给Chart.js以生成条形图

I have a PHP array of objects, each object holds an associative array $key=>$value... each object holds info like:

object1: bread=>5, juice=>3
object2: bread=>3, meat=>4

this is the structure of each object:

class MyObject {

    var $id = 0;
    var $food = array();

    public function setid($id) {
        $this->id = $id;
    }

    public function getid() {
        return $this->id;
    }

    public function setfood($key, $val) {
        $this->food[$key] = $val;
    }

    public function getfood($key) {
        return $this->food[$key];
    }
}

I am using Chart.js to plot, and I am trying to figure out how to build a bar plot that shows, for each object I have, bars corresponding to the associative array values.

The point is that I don't know how many keys there are in the associative arrays, so it's difficult for me to understand how to prepare the datasets. If I know the number of bars before, I can do something like:

data: {
    labels: somelabels,
    datasets:[{
          label: 'Bread',
        data: breadData
        },{
          label: 'Meat',
          data: meatData
        },{
          label: 'Juice',
          data: juiceData
         }]
    }

Any hint on a solution with Chart.js?

  • 写回答

0条回答 默认 最新

    报告相同问题?

    悬赏问题

    • ¥15 ogg dd trandata 报错
    • ¥15 高缺失率数据如何选择填充方式
    • ¥50 potsgresql15备份问题
    • ¥15 Mac系统vs code使用phpstudy如何配置debug来调试php
    • ¥15 目前主流的音乐软件,像网易云音乐,QQ音乐他们的前端和后台部分是用的什么技术实现的?求解!
    • ¥60 pb数据库修改与连接
    • ¥15 spss统计中二分类变量和有序变量的相关性分析可以用kendall相关分析吗?
    • ¥15 拟通过pc下指令到安卓系统,如果追求响应速度,尽可能无延迟,是不是用安卓模拟器会优于实体的安卓手机?如果是,可以快多少毫秒?
    • ¥20 神经网络Sequential name=sequential, built=False
    • ¥16 Qphython 用xlrd读取excel报错