You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@echarts.apache.org by sh...@apache.org on 2018/05/29 05:31:17 UTC
[incubator-echarts] branch master updated: [tree] fix transform
wrong after update
This is an automated email from the ASF dual-hosted git repository.
shenyi pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-echarts.git
The following commit(s) were added to refs/heads/master by this push:
new 56d7822 [tree] fix transform wrong after update
56d7822 is described below
commit 56d7822ec9a0f5d929fe2a89f9f6eb7c76261acd
Author: pissang <bm...@gmail.com>
AuthorDate: Tue May 29 13:30:58 2018 +0800
[tree] fix transform wrong after update
---
src/chart/tree.js | 21 +--------------------
src/chart/tree/TreeSeries.js | 8 ++++++++
src/chart/tree/TreeView.js | 14 +++++++++++---
src/chart/tree/treeAction.js | 19 +++++++++++++++++++
4 files changed, 39 insertions(+), 23 deletions(-)
diff --git a/src/chart/tree.js b/src/chart/tree.js
index 55ab0d6..01a7e26 100644
--- a/src/chart/tree.js
+++ b/src/chart/tree.js
@@ -18,7 +18,6 @@
*/
import * as echarts from '../echarts';
-import {updateCenterAndZoom} from '../action/roamHelper';
import './tree/TreeSeries';
import './tree/TreeView';
@@ -28,22 +27,4 @@ import visualSymbol from '../visual/symbol';
import treeLayout from './tree/treeLayout';
echarts.registerVisual(visualSymbol('tree', 'circle'));
-echarts.registerLayout(treeLayout);
-
-echarts.registerAction({
- type: 'treeRoam',
- event: 'treeRoam',
- update: 'none'
-}, function (payload, ecModel) {
- ecModel.eachComponent({mainType: 'series', query: payload}, function (seriesModel) {
- var coordSys = seriesModel.coordinateSystem;
-
- var res = updateCenterAndZoom(coordSys, payload);
-
- seriesModel.setCenter
- && seriesModel.setCenter(res.center);
-
- seriesModel.setZoom
- && seriesModel.setZoom(res.zoom);
- });
-});
\ No newline at end of file
+echarts.registerLayout(treeLayout);
\ No newline at end of file
diff --git a/src/chart/tree/TreeSeries.js b/src/chart/tree/TreeSeries.js
index 5261a4e..e10b484 100644
--- a/src/chart/tree/TreeSeries.js
+++ b/src/chart/tree/TreeSeries.js
@@ -92,6 +92,14 @@ export default SeriesModel.extend({
return orient;
},
+ setZoom: function (zoom) {
+ this.option.zoom = zoom;
+ },
+
+ setCenter: function (center) {
+ this.option.center = center;
+ },
+
/**
* @override
* @param {number} dataIndex
diff --git a/src/chart/tree/TreeView.js b/src/chart/tree/TreeView.js
index 56eb057..fbc56f7 100644
--- a/src/chart/tree/TreeView.js
+++ b/src/chart/tree/TreeView.js
@@ -147,9 +147,12 @@ export default echarts.extendChartView({
_updateViewCoordSys: function (seriesModel) {
var data = seriesModel.getData();
- var points = data.mapArray(function (idx) {
- var layout = data.getItemLayout(idx) || {};
- return [+layout.x, +layout.y];
+ var points = [];
+ data.each(function (idx) {
+ var layout = data.getItemLayout(idx);
+ if (layout && !isNaN(layout.x) && !isNaN(layout.y)) {
+ points.push([+layout.x, +layout.y]);
+ }
});
var min = [];
var max = [];
@@ -172,6 +175,11 @@ export default echarts.extendChartView({
viewCoordSys.setCenter(seriesModel.get('center'));
viewCoordSys.setZoom(seriesModel.get('zoom'));
+ this.group.attr({
+ position: viewCoordSys.position,
+ scale: viewCoordSys.scale
+ });
+
this._viewCoordSys = viewCoordSys;
},
diff --git a/src/chart/tree/treeAction.js b/src/chart/tree/treeAction.js
index 27ee8c9..186d6c4 100644
--- a/src/chart/tree/treeAction.js
+++ b/src/chart/tree/treeAction.js
@@ -18,6 +18,7 @@
*/
import * as echarts from '../../echarts';
+import {updateCenterAndZoom} from '../../action/roamHelper';
echarts.registerAction({
type: 'treeExpandAndCollapse',
@@ -32,3 +33,21 @@ echarts.registerAction({
});
});
+
+echarts.registerAction({
+ type: 'treeRoam',
+ event: 'treeRoam',
+ update: 'none'
+}, function (payload, ecModel) {
+ ecModel.eachComponent({mainType: 'series', query: payload}, function (seriesModel) {
+ var coordSys = seriesModel.coordinateSystem;
+
+ var res = updateCenterAndZoom(coordSys, payload);
+
+ seriesModel.setCenter
+ && seriesModel.setCenter(res.center);
+
+ seriesModel.setZoom
+ && seriesModel.setZoom(res.zoom);
+ });
+});
\ No newline at end of file
--
To stop receiving notification emails like this one, please contact
shenyi@apache.org.
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@echarts.apache.org
For additional commands, e-mail: commits-help@echarts.apache.org