1.One-line summary [problem brief]
English description:
recently found a problem on the echarts official website, the series data of the relational calendar chart can not be taken to the last day of the chart, and its timestamp is not a regular calendar conversion, there will be an error. According to common sense, no matter whether the data written by the user is correct or not, it is generally only a problem of display or not, and should not report an error. If anyone can solve this problem and tell me, I would appreciate it very much!
English brief::
Recently discovered a problem in echarts official website, the relationship between calendar figure series data cannot take to cover the chart at the end of the day, and its time stamp is not have formal calendar conversion to come over there will be an error.According to common sense, whether the data written by the user is correct or not, it is generally only showing and not displaying the problem, and should not be reported wrong.If anyone can solve this problem and tell me, I am very gratefuls
2.ECharts option [ECharts configuration item]
function getVirtulData (year) {
year = year || "2017";
var date = +echarts.number.parseDate(year + "-01-01");
var end = +echarts.number.parseDate((+year + 1) + "-01-01");
var dayTime = 3600 * 24 * 1000;
var data = [];
for (var time = date; time < end; time += dayTime) {
data.push([
echarts.format.formatTime("yyyy-MM-dd", time),
Math.floor(Math.random() * 1000)
]);
}
console.log(data[data.length - 1]);
return data;
}
var graphData = [
][
1485878400000,
260
],
[
1486137600000,
200
],
[
1486569600000,
279
],
[
1486915200000,
847
],
[
1487347200000,
241
],
[
1487779200000,
411
],
[
1488124800000,
985
]
];
var links = graphData.map (function (item, idx) {
return {
source: idx,
target: idx + 1
};
});
links.pop ();
option = {
tooltip: {
position: "top"
},
visualMap: [{
min: 0,
max: 1000,
calculable: true,
seriesIndex: [2, 3, 4],
orient: "horizontal",
left: "55%",
bottom: 20
}, {
min: 0,
max: 1000,
inRange: {
color: ["grey"],
opacity: [0, 0.3]
},
controller: {
inRange: {
opacity: [0.3, 0.6]
},
outOfRange: {
color: "-sharpccc"
}
},
calculable: true,
seriesIndex: [1],
orient: "horizontal",
left: "10%",
bottom: 20
}],
calendar: [
{
orient: "vertical",
yearLabel: {
margin: 40
},
monthLabel: {
nameMap: "cn",
margin: 20
},
dayLabel: {
firstDay: 1,
nameMap: "cn"
},
cellSize: 40,
range: "2017-02"
},
{
orient: "vertical",
yearLabel: {
margin: 40
},
monthLabel: {
margin: 20
},
cellSize: 40,
left: 460,
range: "2017-01"
},
{
orient: "vertical",
yearLabel: {
margin: 40
},
monthLabel: {
margin: 20
},
cellSize: 40,
top: 350,
range: "2017-03"
},
{
orient: "vertical",
yearLabel: {
margin: 40
},
dayLabel: {
firstDay: 1,
nameMap: ["", "", "", "", "", "", ""]
},
monthLabel: {
nameMap: "cn",
margin: 20
},
cellSize: 40,
top: 350,
left: 460,
range: "2017-04"
}],
series: [{
type: "graph",
edgeSymbol: ["none", "arrow"],
coordinateSystem: "calendar",
links: links,
symbolSize: 10,
calendarIndex: 0,
data: graphData
}, {
type: "heatmap",
coordinateSystem: "calendar",
data: getVirtulData(2017)
}, {
type: "effectScatter",
coordinateSystem: "calendar",
calendarIndex: 1,
symbolSize: function (val) {
return val[1] / 40;
},
data: getVirtulData(2017)
}, {
type: "scatter",
coordinateSystem: "calendar",
calendarIndex: 2,
symbolSize: function (val) {
return val[1] / 60;
},
data: getVirtulData(2017)
}, {
type: "heatmap",
coordinateSystem: "calendar",
calendarIndex: 3,
data: getVirtulData(2017)
}]
};
3. Error message
editor.js?_v_=1519819816100:434 TypeError: Cannot read property "off" of undefined
at echarts.min.js?_v_=1519819816100:1
at AA.CA.eachEdge (echarts.min.js?_v_=1519819816100:1)
at i.render (echarts.min.js?_v_=1519819816100:1)
at or.progress [as _progress] (echarts.min.js?_v_=1519819816100:1)
at or.pM.perform (echarts.min.js?_v_=1519819816100:1)
at echarts.min.js?_v_=1519819816100:1
at i.<anonymous> (echarts.min.js?_v_=1519819816100:1)
at Array.forEach (<anonymous>)
at d (echarts.min.js?_v_=1519819816100:1)
at i.eachSeries (echarts.min.js?_v_=1519819816100:1)
4. Screenshot of effect
5. Online address
online instance: http://echarts.baidu.com/exam.
the first graph of this instance. If you modify its timestamp to the last day of the month, you will get an error