Jquery 如何解决动态图范围选择器错误?
当我开始使用范围选择器时,动态图中的范围选择器将x轴的开始值乘以10(默认情况下,加载页面后x轴是正确的)。e、 g.我的第一个x轴值是1->范围选择器从10开始(5->从50开始)。 数据为JSON格式,无需范围选择器即可正确显示。 我如何解决这个问题或解决这个问题 下面是dygraph.com/fiddle中的代码 我无法显示JSON解析,因此我输入了在浏览器的源代码中看到的JSON。(它以10开头,但在我的数据库中它以1开头。图表在x轴上显示10,但在我移动范围选择器之前显示1的y值) 但当我手动操作JSON以Jquery 如何解决动态图范围选择器错误?,jquery,json,dygraphs,Jquery,Json,Dygraphs,当我开始使用范围选择器时,动态图中的范围选择器将x轴的开始值乘以10(默认情况下,加载页面后x轴是正确的)。e、 g.我的第一个x轴值是1->范围选择器从10开始(5->从50开始)。 数据为JSON格式,无需范围选择器即可正确显示。 我如何解决这个问题或解决这个问题 下面是dygraph.com/fiddle中的代码 我无法显示JSON解析,因此我输入了在浏览器的源代码中看到的JSON。(它以10开头,但在我的数据库中它以1开头。图表在x轴上显示10,但在我移动范围选择器之前显示1的y值) 但
var datenausdb = '[["1","100.0000","101.0000","100.0000"],["2","105.0000","99.0000","100.0000"],["3","104.0000","101.0000","102.0000"],["4","105.0000","102.0000","102.0000"]]';
1显示在x轴上。当我移动选择器时,它将变为10,并且图表中不再显示任何内容我想发布由Dan提到的字符串引起的问题的完整解决方案 我还必须改变日期。这一个有效:
var datenausdb = [
["2013-08-05","100.0000","100.0000","99.9700"],
["2013-08-06","100.0000","101.0000","100.5000"],
["2013-08-07","101.1200","101.1200","101.1000"],
["2013-08-08","100.0100","100.0100","100.0100"],
["2013-08-09","99.9700","99.9700","99.9700"],
["2013-08-12","100.0000","100.0000","100.0000"],
["2013-08-13","101.0000","101.0000","102.0000"],
["2013-08-14","101.1200","101.1200","102.5000"],
["2013-08-15","100.0100","100.0100","100.0100"],
["2013-08-16","99.9700","99.9700","99.9700"],
["2013-08-19","100.5000","100.5000","100.5000"],
["2013-08-20","101.1000","101.1000","101.1000"],
["2013-08-21","102.0000","102.0000","99.9700"]
];
for (var k = 0; k < datenausdb.length; k++){
datenausdb[k][0] = new Date(datenausdb[k][0]);
}
for (var i = 0; i < datenausdb.length; i++){
for (var j = 1; j < datenausdb[i].length; j++) {
datenausdb[i][j] = parseFloat(datenausdb[i][j]);
}
}
$(document).ready(function () {
g1 = new Dygraph(
document.getElementById("div1"),
datenausdb,
{
showRangeSelector: true,
rangeSelectorHeight: 50,
}
);
}
);
var datenausdb=[
["2013-08-05","100.0000","100.0000","99.9700"],
["2013-08-06","100.0000","101.0000","100.5000"],
["2013-08-07","101.1200","101.1200","101.1000"],
["2013-08-08","100.0100","100.0100","100.0100"],
["2013-08-09","99.9700","99.9700","99.9700"],
["2013-08-12","100.0000","100.0000","100.0000"],
["2013-08-13","101.0000","101.0000","102.0000"],
["2013-08-14","101.1200","101.1200","102.5000"],
["2013-08-15","100.0100","100.0100","100.0100"],
["2013-08-16","99.9700","99.9700","99.9700"],
["2013-08-19","100.5000","100.5000","100.5000"],
["2013-08-20","101.1000","101.1000","101.1000"],
["2013-08-21","102.0000","102.0000","99.9700"]
];
对于(var k=0;k
请提供一个说明问题的链接,最好使用dygraphs.com/fiddleI将该链接添加到fiddle和代码中。在小提琴链接上没有图表,所以我仍然不确定你的问题是什么。一个问题是JSON完全由字符串组成,而不是数字。@danvk:对不起,JSFIDLE链接已更新。您可以看到第一张图表的x轴以1开始,但一旦使用范围选择器,它就以10开始。在第二张图表中,使用范围选择器时,x轴为10,从100开始。因此,始终使用因子10。好吧,问题是字符串而不是数字!
var datenausdb = [
["2013-08-05","100.0000","100.0000","99.9700"],
["2013-08-06","100.0000","101.0000","100.5000"],
["2013-08-07","101.1200","101.1200","101.1000"],
["2013-08-08","100.0100","100.0100","100.0100"],
["2013-08-09","99.9700","99.9700","99.9700"],
["2013-08-12","100.0000","100.0000","100.0000"],
["2013-08-13","101.0000","101.0000","102.0000"],
["2013-08-14","101.1200","101.1200","102.5000"],
["2013-08-15","100.0100","100.0100","100.0100"],
["2013-08-16","99.9700","99.9700","99.9700"],
["2013-08-19","100.5000","100.5000","100.5000"],
["2013-08-20","101.1000","101.1000","101.1000"],
["2013-08-21","102.0000","102.0000","99.9700"]
];
for (var k = 0; k < datenausdb.length; k++){
datenausdb[k][0] = new Date(datenausdb[k][0]);
}
for (var i = 0; i < datenausdb.length; i++){
for (var j = 1; j < datenausdb[i].length; j++) {
datenausdb[i][j] = parseFloat(datenausdb[i][j]);
}
}
$(document).ready(function () {
g1 = new Dygraph(
document.getElementById("div1"),
datenausdb,
{
showRangeSelector: true,
rangeSelectorHeight: 50,
}
);
}
);