我用C创建了一个简单的饼图hart.js.我想把它链接到我电脑上的一个JSON文件,它在同一个本地文件夹中。然后,我希望JSON文件中的数据显示在我的饼图上,而不是直接从脚本中获取。
我该怎么做呢?这是我的密码。
<script>
var ctx = document.getElementById("myDoughnutChart");
var myDoughnutChart = new Chart(ctx, {
type: 'doughnut',
data: {
labels: ["Blue", "Red", "Green", "Orange", "Light Blue"],
datasets: [{
backgroundColor: ["#0074D9", "#FF4136", "#2ECC40", "#FF851B", "#7FDBFF"],
data: [12, 19, 3, 5, 2],
}]
},
options: {
responsive: true,
maintainAspectRatio: false,
showAllTooltips: true,
title: {
display: true,
text: "Responsive test"
},
legend: {
display: false,
fullWidth: true,
labels: {
boxWidth: [50]
},
}
}
});
</script>
这是我的JSON文件,保存在“chart.JSON”下-我不确定这是否是正确的格式,因为我是一个真正的新手。
{"jsonarray": [{
"Color": "Blue",
"Value": 12},
{
"Color": "Red",
"Value": 19},
{
"Color": "Green",
"Value": 3},
{
"Color": "Orange",
"Value": 5},
{
"Color": "Light Blue",
"Value": 2}]
};
我理解解析JSON文件的必要性,但我不知道该怎么做——提前非常感谢。
json文件大部分是时间字符串类型,因此您要生成的图表我认为它需要一种数字类型,因此您需要在此处将json数据转换为数字时间检查,如果您正确解析json,请在此处检查其已回答的内容,您就可以了。
这里有几个部分。
我喜欢用Fetch。如果使用jQuery,还可以使用$.ajax。假设该文件与JS代码位于同一目录中,并且名为chart.json
:
fetch('./chart.json')
.then(function (response) {
return response.json();
}).then(function (json) {
// drawChart fn to be created...see below
drawChart(json);
}).catch(function (error) {
console.error(error);
});
请注意,如果您在本地运行此代码,如果您试图直接从文件系统访问网站(如文件:///
相反,您可以轻松地运行本地服务器。转到终端中包含文件的目录,然后运行:
python -m SimpleHTTPServer 8000
或
php -S localhost:8000
这将提供端口8000上的当前目录。然后参观http://localhost:8000/
另外,确保JSON是有效的(末尾没有分号!)。
我们正在尝试制作两个阵列。一个带有数字表示数据,一个带有字符串表示标签。
您可以使用map轻松完成此操作:
var graphData = json.jsonarray.map(e => e.Color);
// ["Blue", "Red", "Green", "Orange", "Light Blue"]
var graphLabels = json.jsonarray.map(e => e.Value);
// [12, 19, 3, 5, 2]
window.addEventListener("DOMContentLoaded", draw);
function draw() {
// Get the json file with fetch or $.ajax
// Pass the json data to drawChart
}
function drawChart(jsonData) {
/* get graphData and graphLabels
draw chart with your existing code
pass graphData and graphLabels in place of
the hard-coded labels and data in your Chart initialization */
}
现在,这段代码只支持一个数据集。
backgroundColor
数组是固定的,因此如果没有精确的5个值,一些背景颜色将是ChartJS的默认灰色。
可以进一步抽象图形代码以支持多个数据集
问题内容: 我想使用 GSON* 在 JAVA中 解析此 JSON 文件: *** 但是我不知道如何加入root元素: 描述符 ,之后是 app3 元素,最后是 name 元素。 我遵循了本教程http://www.mkyong.com/java/gson-streaming-to-read-and-write- json/ ,但是它没有显示具有root和childs元素的情况。 问题答案: Im
我学习了这个教程http://www.mkyong.com/java/gson-streaming-to-read-and-write-json/,但它没有显示root和childs元素的情况。
我想使用Typescript解析/处理一个25 MB的JSON文件,并过滤/排序对象。。我写的代码花了几分钟(有时会超时),不确定为什么会发生这种情况,或者是否有其他方法可以提高代码的效率。 注意:代码在一个小文件上工作
我正在使用Coingecko API。但我就是无法解析数据。下面是示例数据。解析我要做的每个块。 https://api.coingecko.com/api/v3/exchanges 我使用的示例代码: null null
问题内容: 因此,我坐在这里与Google Geocoder一起,后者通过’GOOGLE_URL / xml?address = input&sensor = false’返回XML。我需要使用Java来获取它,并将其解析为JSON对象并继续发送。 我将如何去做?(不,这不是家庭作业)请注意,最好在标准库中完成。目前,我正在尝试确定是否可以使用例如SAX来完成。 问题答案: 这是一个工作示例,显示
问题内容: 我正在尝试使用Python解析html文件,而不使用任何外部模块。原因是我正在触发jenkins作业,并遇到了lxml和BeautifulSoup的一些导入问题(试图解决该问题,我认为我在进行工程设计的某个方面来完成我的工作) 输入 : 输出 : 我想使用“ suite”类(末尾检查)来获取tr标记的特定块,然后提取零号,零号,零号和passRate套件的值。最后,打印值。 ~ ~ ~