diff --git a/src/chart/helper/Line.js b/src/chart/helper/Line.js index 01dfe96cdbbac318b17c924899733fbafb645ada..f53e0d9f82014565aab15cf4c38ceb85886721f6 100644 --- a/src/chart/helper/Line.js +++ b/src/chart/helper/Line.js @@ -230,6 +230,10 @@ define(function (require) { var textStyleHoverModel = labelHoverModel.getModel('textStyle'); var defaultText = numberUtil.round(seriesModel.getRawValue(idx)); + if (isNaN(defaultText)) { + // Use name + defaultText = lineData.getName(idx); + } line.setStyle(zrUtil.extend( { stroke: lineData.getItemVisual(idx, 'color') diff --git a/src/component/marker/MarkLineView.js b/src/component/marker/MarkLineView.js index cc7d3557bad68d3ea59b27ded907b114e12193a3..6417c7797264073f75bda5a59bfea55a9aa54f11 100644 --- a/src/component/marker/MarkLineView.js +++ b/src/component/marker/MarkLineView.js @@ -4,6 +4,7 @@ define(function (require) { var List = require('../../data/List'); var formatUtil = require('../../util/format'); var modelUtil = require('../../util/model'); + var numberUtil = require('../../util/number'); var addCommas = formatUtil.addCommas; var encodeHTML = formatUtil.encodeHTML; @@ -198,7 +199,10 @@ define(function (require) { var xPx = itemModel.get('x'); var yPx = itemModel.get('y'); if (xPx != null && yPx != null) { - point = [xPx, yPx]; + point = [ + numberUtil.parsePercent(xPx, api.getWidth()), + numberUtil.parsePercent(yPx, api.getHeight()) + ]; } else { var x = data.get(dims[0], idx); diff --git a/src/component/marker/MarkPointView.js b/src/component/marker/MarkPointView.js index 12b8f4771ce956340ebb2d35fa17f6a9dcf70c25..4c153ca9135e659f6f9d8b24964f18d45279529e 100644 --- a/src/component/marker/MarkPointView.js +++ b/src/component/marker/MarkPointView.js @@ -4,6 +4,7 @@ define(function (require) { var zrUtil = require('zrender/core/util'); var formatUtil = require('../../util/format'); var modelUtil = require('../../util/model'); + var numberUtil = require('../../util/number'); var addCommas = formatUtil.addCommas; var encodeHTML = formatUtil.encodeHTML; @@ -95,7 +96,10 @@ define(function (require) { var xPx = itemModel.getShallow('x'); var yPx = itemModel.getShallow('y'); if (xPx != null && yPx != null) { - point = [xPx, yPx]; + point = [ + numberUtil.parsePercent(xPx, api.getWidth()), + numberUtil.parsePercent(yPx, api.getHeight()) + ]; } else if (coordSys) { var x = mpData.get(dims[0], idx); diff --git a/src/component/marker/markerHelper.js b/src/component/marker/markerHelper.js index 27da9271dcd599192a0b09880caf512e066321da..3b39e687e11cb48ceb866efebb28cc85175d0cfc 100644 --- a/src/component/marker/markerHelper.js +++ b/src/component/marker/markerHelper.js @@ -135,7 +135,8 @@ define(function (require) { */ var dataFilter = function (coordSys, item) { // Alwalys return true if there is no coordSys - return coordSys ? coordSys.containData(item.value) : true; + return (coordSys && item.value && (item.x == null || item.y == null)) + ? coordSys.containData(item.value) : true; }; return {