Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/blackberry/2.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
使用Chartjs和PHP创建图表_Php_Chart.js - Fatal编程技术网

使用Chartjs和PHP创建图表

使用Chartjs和PHP创建图表,php,chart.js,Php,Chart.js,我需要使用chartJS创建一个图表,它从mysql获取数据,下面是mysql表的示例输出: +----+------------+----------+-----------------+---------- | ID | DATE | Time | Create | Delete | Product | +----+------------+----------+-----------------+---------+ | 1 | 03/12/2017 | 09:00:

我需要使用chartJS创建一个图表,它从mysql获取数据,下面是mysql表的示例输出:

+----+------------+----------+-----------------+----------
| ID | DATE       | Time     | Create | Delete | Product |
+----+------------+----------+-----------------+---------+
|  1 | 03/12/2017 | 09:00:00 |     28 |   1264 |      59 | 
我使用toturial以JSON格式保存了数据,下面是PHP文件:

get.php

<?php

$DB_NAME = 'testDB';
$DB_HOST = 'localhost';
$db_port = '3306';
$DB_USER = 'test';
$DB_PASS = 'mysql';
$mysqli = new mysqli($DB_HOST, $DB_USER, $DB_PASS, $DB_NAME);

  if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
  }

  $result = $mysqli->query('Select * from (SELECT * FROM Stats ORDER BY id DESC LIMIT 48)t ORDER BY id ASC');
  $rows = array();
  $table = array();
  $table['cols'] = array(
    array('label' => 'Time', 'type' => 'string'),
   array('label' => 'ProductCreate', 'type' => 'number'),
   array('label' => 'ProductDelete', 'type' => 'number'),
   array('label' => 'ProductRenew', 'type' => 'number')

);
    foreach($result as $r) {

      $temp = array();

      $temp[] = array('v' => (string) $r['Time']); 
      $temp[] = array('v' => (int) $r['Create']);
      $temp[] = array('v' => (int) $r['Delete']);
      $temp[] = array('v' => (int) $r['Renew']);

      $rows[] = array('c' => $temp);
    }

$table['rows'] = $rows;

// convert data into JSON format
$SubsStats = json_encode($table);
echo $SubsStats;


?>

我现在的问题是如何将PHP输出包含到HTML文件中,并使用ChartJS绘制图表

谢谢, 阿里检查
var数据={
标签:[“一月”、“二月”、“三月”,
“四月”、“五月”、“六月”,
“七月”、“极乐日”、“九月”,
“十月”、“十一月”、“十二月”],
数据集:[
{
填充颜色:“rgba(252233,79,0.5)”,
strokeColor:“rgba(82,75,25,1)”,
pointColor:“rgba(166152,51,1)”,
pointStrokeColor:“fff”,
数据:
}
]
}
变量选项={
//布尔值-如果我们在图表数据上方显示比例
scaleOverlay:false,
//布尔值-如果我们想用硬编码的比例覆盖
scaleOverride:对,
//**如果scaleOverride为真,则需要此选项**
//数字-硬编码刻度中的步数
比例:14,
//数字-硬编码刻度中的值跳转
刻度宽度:5,
//数字-刻度起始值
scaleStartValue:55,
//字符串-刻度线的颜色
scaleLineColor:“rgba(20,20,20,7)”,
//数字-缩放线的像素宽度
标度宽度:1,
//布尔值-是否在比例上显示标签
scaleShowLabels:对,
//插入JS字符串-可以访问值
scaleLabel:“”,
//字符串-缩放标签的缩放标签字体声明
scaleFontFamily:“Arial”,
//数字-缩放标签字体大小(以像素为单位)
scaleFontSize:12,
//字符串-缩放标签字体重量样式
scaleFontStyle:“正常”,
//字符串-缩放标签字体颜色
scaleFontColor:#666“,
///布尔值-是否在图表中显示网格线
scaleShowGridLines:对,
//字符串-网格线的颜色
scaleGridLineColor:“rgba(0,0,0,3)”,
//Number—网格线的宽度
scaleGridLineWidth:1,
//布尔-点之间的直线是否弯曲
贝塞尔曲线:对,
//布尔值-是否为每个点显示点
是的,
//Number-每个点的半径(以像素为单位)
点半径:5,
//数字-点-点笔划的像素宽度
pointDotStrokeWidth:1,
//布尔值-是否显示数据集的笔划
datasetStroke:对,
//数字-数据集笔划的像素宽度
datasetStrokeWidth:2,
//布尔值-是否用颜色填充数据集
datasetFill:true,
//布尔值-是否为图表设置动画
动画:错,
//Number-动画步骤数
动画步骤:60,
//字符串动画效果
动画化:“easeOutQuart”,
//函数-动画完成时激发
onAnimationComplete:null
};
//使用jQuery获取上下文-使用jQuery的.Get()方法。
var ctx=$(“#myChart”).get(0.getContext(“2d”);
新图表(ctx).Line(数据、选项)

使用上面的“substats”json数据,并在chartJS支持的函数的帮助下传递给JavaScript函数以创建图表。
$data = array(
    array("label"=> row['id'], "y"=> row['value']),
    array("label"=> row['column1'], "y"=> row['value1']),
    array("label"=> row['column2'], "y"=> row['value2']),
        );

?>