UNPKG

echarts

Version:

A powerful charting and visualization library for browser

43 lines (33 loc) 1.45 kB
/** * @file Visual encoding for sankey view * @author Deqing Li(annong035@gmail.com) */ var VisualMapping = require('../../visual/VisualMapping'); var zrUtil = require('zrender/lib/core/util'); module.exports = function (ecModel, payload) { ecModel.eachSeriesByType('sankey', function (seriesModel) { var graph = seriesModel.getGraph(); var nodes = graph.nodes; nodes.sort(function (a, b) { return a.getLayout().value - b.getLayout().value; }); var minValue = nodes[0].getLayout().value; var maxValue = nodes[nodes.length - 1].getLayout().value; zrUtil.each(nodes, function (node) { var mapping = new VisualMapping({ type: 'color', mappingMethod: 'linear', dataExtent: [minValue, maxValue], visual: seriesModel.get('color') }); var mapValueToColor = mapping.mapValueToVisual(node.getLayout().value); node.setVisual('color', mapValueToColor); // If set itemStyle.normal.color var itemModel = node.getModel(); var customColor = itemModel.get('itemStyle.normal.color'); if (customColor != null) { node.setVisual('color', customColor); } }); }); };