javascript - 图表 JS 集成

标签 javascript jquery html css charts

我是第一次使用 chartjs 。

我试图从 chartjs 模块测试一个简单的条形图。但我做不到

在我的浏览器中查看任何图表。如果我犯了任何错误,请告诉我。

下面我添加了我正在使用的 HTML 源代码,请浏览它。 谢谢

<html>
<head>
  <script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/Chart.js/2.7.1/Chart.min.js"></script>
   <script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/Chart.js/2.7.1/Chart.bundle.min.js"></script>
  
      	<script>
	var Chart = require('chart.js');
	var ctx = document.getElementById("myChart");
	var myChart = new Chart(ctx, {
	    type: 'bar',
	    data: {
	        labels: ["Red", "Blue", "Yellow", "Green", "Purple", "Orange"],
	        datasets: [{
	            label: '# of Votes',
	            data: [12, 19, 3, 5, 2, 3],
	            backgroundColor: [
	                'rgba(255, 99, 132, 0.2)',
	                'rgba(54, 162, 235, 0.2)',
	                'rgba(255, 206, 86, 0.2)',
	                'rgba(75, 192, 192, 0.2)',
	                'rgba(153, 102, 255, 0.2)',
	                'rgba(255, 159, 64, 0.2)'
	            ],
	            borderColor: [
	                'rgba(255,99,132,1)',
	                'rgba(54, 162, 235, 1)',
	                'rgba(255, 206, 86, 1)',
	                'rgba(75, 192, 192, 1)',
	                'rgba(153, 102, 255, 1)',
	                'rgba(255, 159, 64, 1)'
	            ],
	            borderWidth: 1
	        }]
	    },
	    options: {
	        scales: {
	            yAxes: [{
	                ticks: {
	                    beginAtZero:true
	                }
	            }]
	        }
	    }
	});
	
	</script>
</head>
<body>
	<canvas id="myChart" width="400" height="400"></canvas>
</body>
</html>

最佳答案

您在 body 之前加载了 script 所以 document.getElementById("myChart"); 导致 undefined。将 script 移动到 body 下方,它将正常工作。

<html>

<head>
  <script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/Chart.js/2.7.1/Chart.min.js"></script>

</head>

<body>
  <canvas id="myChart" width="400" height="400"></canvas>
</body>
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/Chart.js/2.7.1/Chart.bundle.min.js"></script>

<script>

  var ctx = document.getElementById("myChart");
  var myChart = new Chart(ctx, {
    type: 'bar',
    data: {
      labels: ["Red", "Blue", "Yellow", "Green", "Purple", "Orange"],
      datasets: [{
        label: '# of Votes',
        data: [12, 19, 3, 5, 2, 3],
        backgroundColor: [
          'rgba(255, 99, 132, 0.2)',
          'rgba(54, 162, 235, 0.2)',
          'rgba(255, 206, 86, 0.2)',
          'rgba(75, 192, 192, 0.2)',
          'rgba(153, 102, 255, 0.2)',
          'rgba(255, 159, 64, 0.2)'
        ],
        borderColor: [
          'rgba(255,99,132,1)',
          'rgba(54, 162, 235, 1)',
          'rgba(255, 206, 86, 1)',
          'rgba(75, 192, 192, 1)',
          'rgba(153, 102, 255, 1)',
          'rgba(255, 159, 64, 1)'
        ],
        borderWidth: 1
      }]
    },
    options: {
      scales: {
        yAxes: [{
          ticks: {
            beginAtZero: true
          }
        }]
      }
    }
  });
</script>

</html>

P.S 无需在脚本中包含 var Chart = require('chart.js');

关于javascript - 图表 JS 集成,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47406607/

相关文章:

javascript - JS:如何在屏幕上找到元素的位置而不在其他计算机上有所不同?

jquery - 如何使用jquery获取连续的元素?

javascript - 在新选项卡中打开页面并刷新旧页面(Struts2 + javascript)

javascript - link_to 为 :method => :delete routing through GET not DELETE rails 4

javascript - 如果调整大小时保持其纵横比,则确定可调整大小的 Div

javascript - 确定 Canvas 大小何时调整

javascript - 提交按钮 .submit 恢复为默认行为

javascript - 如何在 jquery 模糊事件监听器上应用条件

html - 悬停时不会出现第二级下拉菜单

html - Firefox 与 Chrome 中奇怪的输入宽度