Laravel Google图表类型不匹配将时间值打印到图形上
您好,我正在尝试使用谷歌图表绘制一个图表,该图表将显示子任务的开始日与估计的持续时间,我正在使用数据库检索我的数据,我正在将我的数据转换为JSON对象以绘制到图表上,但我收到以下错误:Laravel Google图表类型不匹配将时间值打印到图形上,laravel,time,charts,google-visualization,Laravel,Time,Charts,Google Visualization,您好,我正在尝试使用谷歌图表绘制一个图表,该图表将显示子任务的开始日与估计的持续时间,我正在使用数据库检索我的数据,我正在将我的数据转换为JSON对象以绘制到图表上,但我收到以下错误: Uncaught Error: Type mismatch. Value 01:00:00,02:20:00,00:20:00,02:20:00,01:23:00,02:20:00,02:20:00,01:00:00, 01:23:00,01:00:00 does not match type datetime
Uncaught Error: Type mismatch. Value
01:00:00,02:20:00,00:20:00,02:20:00,01:23:00,02:20:00,02:20:00,01:00:00,
01:23:00,01:00:00 does not match type datetime in column index 1
format+en_GB,default+en_GB,ui+en_GB,corechart+en_GB.I.js:169
以下是我获取绘图数据的方式:
@扩展布局
@章节内容
加载'visualization','1',{packages:['corechart']};
功能可视化{
//创建并填充数据表。
var dataTable=新的google.visualization.dataTable;
dataTable.addColumn'datetime','Year';
dataTable.addColumn'datetime','estimated_duration';
dataTable.addRows[
[新日期{{json_encode$start_day},{{json_encode$estimated_duration}}];
新的google.visualization.DateFormat{pattern:'yyyyy/MM/dd HH:MM:ss'}.formatdataTable,0;
//创建并绘制可视化。
var chart=new google.visualization.LineChartdocument.getElementById'visualization';
chart.drawdataTable,{curveType:function};
}
google.setOnLoadCallbackdrawVisualization;
@停止
我的数据库中的数据值采用以下格式:
`开始日`=`2013-02-10`
`持续时间`=`01:00:00`
在laravel中,我在存储库中检索数据,如下所示:
public function subtaskDurationReport() {
return \Auth::user()->subtasks()->limit(10)->get();
}
然后在控制器中,我将值传递给视图
公共职能报告
{
$subtask=$this->subtask->subtaskDurationReport;
返回视图::生成“子任务.报告”
->与[
“开始日”=>$subtask->列出“开始日”,
“估计持续时间”=>$subtask->列出“估计持续时间”
];
}
我做错什么了吗?我是否需要转换开始日或预计持续时间格式?任何建议和投入都是有价值的 尝试使用以下代码代替您的代码:
dataTable.addRows(new Date( {{ json_encode($start_day) }}),{{ json_encode($estimated_duration) }} );
01:00:00不是日期时间。Datetime应仅为1列,开始日期和结束日期duration@juvian当我更改为duration时,会出现以下错误:未捕获错误:column的类型无效,duration,我的意思是您只需要1个列类型dateTime,包含日期和时间