javascript – 单页上有多种类型的Google Charts

前端之家收集整理的这篇文章主要介绍了javascript – 单页上有多种类型的Google Charts前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我想在一个页面获取多种类型的Google Charts.饼图和日历图表.当我尝试这样做时,我得到以下错误代替饼图:
  1. You called the draw() method with the wrong type of data rather than a DataTable or DataView

如果我一次只做一张图表,那么错误就会消失.它始终是顶部的推车,显示相同的错误.最好的我可以告诉它,因为数据是不同的类型..所以我认为它与干扰变量有关.我为每个图表的数据添加了一个uniqe标识符,但我仍然遇到了问题……

这是我的PHP的HTML输出

  1. <script type='text/javascript' src='https://www.google.com/jsapi'></script>
  2. <script type='text/javascript'>
  3. google.load('visualization','1',{
  4. packages : [ 'corechart' ]
  5. });
  6. google.setOnLoadCallback(drawChart_testGraph);
  7. function drawChart_testGraph() {
  8.  
  9. var data_testGraph = google.visualization.arrayToDataTable([
  10. [ 'Department','Count' ],[ 'Accounting',1 ],[ 'Lobby',[ 'Customer Apps',[ 'PC Support',0 ],[ 'Collections',[ 'Inventory',[ 'Billing',[ 'Executive',4 ],[ 'Customer Service',[ 'Sales and Marketing',[ 'Product and Development',[ 'Materials Management',[ 'Remittance',[ 'Support Services',[ 'Indirect Distribution',[ 'Provisioning Support',]);
  11.  
  12. var options_testGraph = {
  13. title : 'Usage by department',backgroundColor : 'transparent',is3D : 'false',};
  14.  
  15. var chart_testGraph = new google.visualization.PieChart(document
  16. .getElementById('testGraph'));
  17.  
  18. chart_testGraph.draw(data_testGraph,options_testGraph);
  19. console.log(data_testGraph);
  20. }
  21. </script>
  22. <div id='testGraph' style='width: 900px; height: 500px;'></div>
  23. <script type='text/javascript' src='https://www.google.com/jsapi'></script>
  24. <script type='text/javascript'>
  25. google.load('visualization','1.1',{
  26. packages : [ 'calendar' ]
  27. });
  28. google.setOnLoadCallback(drawChart_testGraph2);
  29. function drawChart_testGraph2() {
  30.  
  31. var dataTable_testGraph2 = new google.visualization.DataTable();
  32. dataTable_testGraph2.addColumn({
  33. type : 'date',id : 'Department'
  34. });
  35. dataTable_testGraph2.addColumn({
  36. type : 'number',id : 'Count'
  37. });
  38. dataTable_testGraph2.addRows([ [ new Date('2014,09,18'),[ new Date('2014,17'),15'),6 ],13'),12'),2 ],]);
  39.  
  40. var options_testGraph2 = {
  41. title : 'Usage by department',backgroundColor : 'white',};
  42.  
  43. var chart_testGraph2 = new google.visualization.Calendar(document
  44. .getElementById('testGraph2'));
  45.  
  46. chart_testGraph2.draw(dataTable_testGraph2,options_testGraph2);
  47.  
  48. }
  49. </script>
  50. <div id='testGraph2' style='width: 900px; height: 500px;'></div>
  51. </div>

有任何想法吗?

解决方法

这不是加载谷歌软件包的正确方法,你试图加载谷歌可视化软件包2次,所以第二个是覆盖第一个.您需要删除第二个加载并在第一个脚本中加载:(或加载两次)
  1. google.load('visualization',{
  2. packages : [ 'corechart','calendar' ]
  3. });

猜你在找的JavaScript相关文章