From 4097cc9ad6c60bbb5e9864d3f54a37cfbb40026e Mon Sep 17 00:00:00 2001 From: riku <risaku@163.com> Date: 星期三, 05 三月 2025 15:31:28 +0800 Subject: [PATCH] 临时:路网版本 --- src/model/Legend.js | 52 +++++++++++++++++++++++++++++++++++++++++----------- 1 files changed, 41 insertions(+), 11 deletions(-) diff --git a/src/model/Legend.js b/src/model/Legend.js index dffc4e0..9dfbcc4 100644 --- a/src/model/Legend.js +++ b/src/model/Legend.js @@ -142,13 +142,21 @@ ] }, + // _custom: [ + // [0.05, 0.9, 0.03, 0.75], + // [0.3, 0.65, 0.02, 0.75], + // [0.87, 0.92, 0.03, 0.75], + // [0.8, 0.67, 0.04, 0.75], + // [0.92, 0.28, 0.07, 0.75], + // [0.6, 0.05, 0.05, 0.75] + // ], _custom: [ - [0.05, 0.9, 0.03, 0.75], - [0.3, 0.65, 0.02, 0.75], - [0.87, 0.92, 0.03, 0.75], - [0.8, 0.67, 0.04, 0.75], - [0.92, 0.28, 0.07, 0.75], - [0.6, 0.05, 0.05, 0.75] + [0, 0.89, 0, 0.75], + [1, 1, 0, 0.75], + [1, 0.49, 0, 0.75], + [1, 0, 0, 0.75], + [0.6, 0, 0.3, 0.75], + [0.49, 0, 0.14, 0.75] ], getStandardRange: function (name) { @@ -181,23 +189,45 @@ }, /** + * 鑾峰彇褰撳墠棰滆壊涓婁竴涓瓑绾х殑棰滆壊 + * @param {*} name + * @param {*} type + * @param {*} color + */ + getPreviousColor(name, type, color) { + let colors; + if (type == this.S_TYPE) { + colors = this._legend_c[name]; + } else { + colors = this._custom; + } + if (colors == undefined) { + colors = this._legend_c['PM25']; + } + let index = colors.indexOf(color); + index--; + if (index < 0) index = 0; + return colors[index]; + }, + + /** * 鑾峰彇鐩戞祴鍥犲瓙褰撳墠娴撳害瀵瑰簲鐨勯鑹� * @param name 鐩戞祴鍥犲瓙鍚嶇О * @param data 鐩戞祴鍥犲瓙娴撳害 */ getStandardColor: function (name, data) { - var range = this._legend_r[name]; - var colors = this._legend_c[name]; + let range = this._legend_r[name]; + let colors = this._legend_c[name]; if (range == undefined) { range = this._legend_r['PM25']; colors = this._legend_c['PM25']; } // return colors[0] - var selected = undefined; + let selected = undefined; for (let i = 0; i < range.length; i++) { const d = range[i]; - var d1 = d; + let d1 = d; if (name == 'CO') { d1 *= 1000; } @@ -219,7 +249,7 @@ getCustomColor: function (data, min, max) { var per = (max - min) / this._custom.length; - var i = parseInt(data / per); + var i = parseInt((data - min) / per); if (i >= this._custom.length) { i = this._custom.length - 1; } -- Gitblit v1.9.3