Chartist 动态输入
Chartist dynamic input
我正在制作一个网站,用户可以在其中上传将显示为图表的数据
HTML:<div id="data"></div>
test1.php 输出:,-0.05,-0.07,-0.07,-0.07,0.14,0.14,0.09,0.07,0.07,0.07,0.07,0.65,0.63,0.63,0.63,0.63,0.63,0.58,0.56,0.56,0.56,0.56,0.84,0.79,0.77,0.77
js/jquery:
$(document).ready(function(){
$("#data").load("test1.php");
var data = $("#data").text().split(",").slice(1);
new Chartist.Line(".ct-chart", {
labels: [data],
series:[ data ]
}, {
fullWidth: true,
height: 650,
chartPadding: {
right: 0
}
});
});
图表没有显示,我收到错误
Uncaught Error: Exceeded maximum number of iterations while optimizing
scale step
但是如果我在控制台中输入 $("#data").text().split(",").slice(1)
并将输出粘贴到标签和系列中,它工作正常如果您将数据设为普通数组并且不从页面获取数据,它也可以工作
我假设您使用 $.load
函数运行 xhr 请求。 XHR 请求通常是异步的(google 首字母缩略词的定义 AJAX)——因此您尝试输入的数据在您需要时不存在。它仅在所有 http-request 完成后从 php 页面返回 - 这很可能是在 Charlist.new()
函数触发后。
查看此处的文档:http://api.jquery.com/load/
如果您改为尝试这样的操作(未测试):
$(document).ready(function(){
$.ajax("test1.php", {
success:function(response) {
var data = response.split(",").slice(1);
new Chartist.Line(".ct-chart", {
labels: [data],
series:[ data ]
}, {
fullWidth: true,
height: 650,
chartPadding: {
right: 0
}
});
});
}
});
编辑:好的,我更新了一些代码。正如我所说,这是未经测试的。但这应该会引导您朝着正确的方向前进。现在就试试。如果它不工作 100% 做一些测试和调试,也许你会学到一些东西..
我正在制作一个网站,用户可以在其中上传将显示为图表的数据
HTML:<div id="data"></div>
test1.php 输出:,-0.05,-0.07,-0.07,-0.07,0.14,0.14,0.09,0.07,0.07,0.07,0.07,0.65,0.63,0.63,0.63,0.63,0.63,0.58,0.56,0.56,0.56,0.56,0.84,0.79,0.77,0.77
js/jquery:
$(document).ready(function(){
$("#data").load("test1.php");
var data = $("#data").text().split(",").slice(1);
new Chartist.Line(".ct-chart", {
labels: [data],
series:[ data ]
}, {
fullWidth: true,
height: 650,
chartPadding: {
right: 0
}
});
});
图表没有显示,我收到错误
Uncaught Error: Exceeded maximum number of iterations while optimizing scale step
但是如果我在控制台中输入 $("#data").text().split(",").slice(1)
并将输出粘贴到标签和系列中,它工作正常如果您将数据设为普通数组并且不从页面获取数据,它也可以工作
我假设您使用 $.load
函数运行 xhr 请求。 XHR 请求通常是异步的(google 首字母缩略词的定义 AJAX)——因此您尝试输入的数据在您需要时不存在。它仅在所有 http-request 完成后从 php 页面返回 - 这很可能是在 Charlist.new()
函数触发后。
查看此处的文档:http://api.jquery.com/load/
如果您改为尝试这样的操作(未测试):
$(document).ready(function(){
$.ajax("test1.php", {
success:function(response) {
var data = response.split(",").slice(1);
new Chartist.Line(".ct-chart", {
labels: [data],
series:[ data ]
}, {
fullWidth: true,
height: 650,
chartPadding: {
right: 0
}
});
});
}
});
编辑:好的,我更新了一些代码。正如我所说,这是未经测试的。但这应该会引导您朝着正确的方向前进。现在就试试。如果它不工作 100% 做一些测试和调试,也许你会学到一些东西..