javascript – 将外部JSON加载到ChartJs中
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了javascript – 将外部JSON加载到ChartJs中,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2874字,纯文字阅读大概需要5分钟。
内容图文
![javascript – 将外部JSON加载到ChartJs中](/upload/InfoBanner/zyjiaocheng/726/8a63e837619740748e946053d2a09e04.jpg)
当我在JavaScript中使用库来绘制图表时,我是一个新手,我刚开始尝试使用Chartjs,我一直无法使用getJson或其他任何东西来加载我的json对象并替换标签和数据.我之前使用过HighCharts,与此相比它非常简单.另外,我如何将它放入Angular中的指令并显示它.
https://jsfiddle.net/0u9Lpttx/1/
的index.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title></title>
</head>
<body>
<div style="width: 100%; height: 100%;">
<canvas id="myChart" style="width: 100%; height: auto;"></canvas>
</div>
<div id="js-legend" class="chart-legend"></div>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.0.6/angular.js"></script>
<script src="http://cdnjs.cloudflare.com/ajax/libs/Chart.js/1.0.1/Chart.min.js"></script>
<script src="js/chartJsControl.js"></script>
</body>
</html>
data.json
[
{
"timestamp": "Monday",
"original_tweet": "756",
"retweets": "345",
"shared": "34",
"quoted": "14"
},
{
"timestamp": "Tuesday",
"original_tweet": "756",
"retweets": "345",
"shared": "34",
"quoted": "14"
},
{
"timestamp": "Wednesday",
"original_tweet": "756",
"retweets": "345",
"shared": "34",
"quoted": "14"
}
]
chartJsControl.js
var test = [];
$.getJSON("data.json", function (json) {
test.push(json[i].timestamp);
});
var data = {
labels: test,
datasets: [
{
label: "My First dataset",
fillColor: "rgba(220,220,220,0.5)",
strokeColor: "rgba(220,220,220,0.8)",
highlightFill: "rgba(220,220,220,0.75)",
highlightStroke: "rgba(220,220,220,1)",
data: [65, 59, 80, 81, 56, 55, 40]
},
{
label: "My Second dataset",
fillColor: "rgba(151,187,205,0.5)",
strokeColor: "rgba(151,187,205,0.8)",
highlightFill: "rgba(151,187,205,0.75)",
highlightStroke: "rgba(151,187,205,1)",
data: [28, 48, 40, 19, 86, 27, 90]
}
]
};
var ctx = document.getElementById("myChart").getContext("2d");
ctx.canvas.width = 1000;
ctx.canvas.height = 800;
var myChart = new Chart(ctx).Bar(data);
解决方法:
如果你想使用data.json中返回的JSON,你需要在回调函数中这样做:
$.getJSON("data.json", function (json) {
// will generate array with ['Monday', 'Tuesday', 'Wednesday']
var labels = json.map(function(item) {
return item.timestamp;
});
var data = {
labels: labels,
datasets: [
{
label: "My First dataset",
fillColor: "rgba(220,220,220,0.5)",
strokeColor: "rgba(220,220,220,0.8)",
highlightFill: "rgba(220,220,220,0.75)",
highlightStroke: "rgba(220,220,220,1)",
data: [65, 59, 80, 81, 56, 55, 40]
},
{
label: "My Second dataset",
fillColor: "rgba(151,187,205,0.5)",
strokeColor: "rgba(151,187,205,0.8)",
highlightFill: "rgba(151,187,205,0.75)",
highlightStroke: "rgba(151,187,205,1)",
data: [28, 48, 40, 19, 86, 27, 90]
}
]
};
var ctx = document.getElementById("myChart").getContext("2d");
ctx.canvas.width = 1000;
ctx.canvas.height = 800;
var myChart = new Chart(ctx).Bar(data);
});
如果您使用Angular我会建议使用angular chart.js版本,请参阅:http://jtblin.github.io/angular-chart.js/
然后你已经有一个角度指令,你可以使用!
内容总结
以上是互联网集市为您收集整理的javascript – 将外部JSON加载到ChartJs中全部内容,希望文章能够帮你解决javascript – 将外部JSON加载到ChartJs中所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。