我一直在努力想弄清楚如何让dygraphs与我的数据很好地配合。当它渲染图表时,它会切断显示屏中的大部分线条。但是,如果我向左侧滚动(移动+拖动),它会重新缩放视图并包含所有数据。看起来图表末尾的下降正在扭曲图表的视图。
这很简单,我在这里有一个示例数据文件:http://pasamio.com/~pasamio/dygraph/sample_data.json
以下是我用来吸引它的内容:
var dataURL = "http://pasamio.com/~pasamio/dygraph/sample_data.json";
var jsonData = null;
var jsonDataResult = $.ajax({
url: dataURL,
dataType: "json",
async: false,
success: (
function(data) {
jsonData = data;
})
});
var data = new google.visualization.DataTable(jsonData);
var g = new Dygraph.GVizChart(document.getElementById("dg_div"));
g.draw(data, {"panEdgeFraction" : 0.1});
我在这里有一个示例jsfiddle,显示了不好的情况:https://jsfiddle.net/g6b6jp9z/5/
任何想法都在这里发生了什么?
答案 0 :(得分:1)
作为danvk suggested,解决方案是将数字改为用引号括起来,使它们被视为字符串,只是JSON输出中的裸号。再次感谢danvk:)
原始文件包含以下部分:
"c": [
{
"v": "Date(2016, 10, 27, 00, 00, 00)"
},
{
"v": "548"
},
{
"v": "165"
},
{
"v": "57"
},
{
"v": "39"
},
{
"v": "29"
},
{
"v": "6"
},
{
"v": "1"
}
]
工作版看起来像这样:
"c": [
{
"v": "Date(2016, 10, 27, 00, 00, 00)"
},
{
"v": 548
},
{
"v": 165
},
{
"v": 57
},
{
"v": 39
},
{
"v": 29
},
{
"v": 6
},
{
"v": 1
}
]