UNPKG

@dfsj/echarts

Version:

专业的水文曲线组件或构造函数以及通用的echart二次封装图表

12 lines (10 loc) 4.21 kB
/** * * @dfsj/echarts: 专业的水文曲线组件或构造函数以及通用的echart二次封装图表 * 版本: v4.0.0-alpha.9 * 作者:yangbo <1747837358@qq.com> * 日期:2026-07-10 17:09:23 * * */ import n from"dayjs";import r from"numeral";import{assign as u}from"lodash-es";import{EMPTY_ARRAY as e}from"@dfsj/utils";import t from"./units.js";function i(n){var u=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"0.00";return null==n?arguments.length>2&&void 0!==arguments[2]?arguments[2]:"--":r(n).format(u)}function l(n){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"0.00",u=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"--";return isNaN(n)?n||u:null!=n?i(n,r):u}function o(n){return null==n?e:Array.isArray(n)?n:[n]}function a(n,r){for(var u=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0,e=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null==n?void 0:n.length,t=0,i=0,l=u;l<e;l++){var o=n[l][r];null!=o&&(t+=o,i++)}return i>0?t/i:null}function f(n,r){for(var u=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0,e=arguments.length>3&&void 0!==arguments[3]?arguments[3]:n.length,t=0,i=u;i<=e;i++){var l=n[i][r];null!=l&&(t+=l)}return t}function v(n,r){for(var u=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0,e=arguments.length>3&&void 0!==arguments[3]?arguments[3]:n.length,t=Number.POSITIVE_INFINITY,i=u;i<=e;i++){var l,o=null==n||null===(l=n[i])||void 0===l?void 0:l[r];null!=o&&o<t&&(t=o)}return t===Number.POSITIVE_INFINITY?null:t}function d(n,r){for(var u=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0,e=arguments.length>3&&void 0!==arguments[3]?arguments[3]:n.length,t=Number.NEGATIVE_INFINITY,i=u;i<=e;i++){var l,o=null==n||null===(l=n[i])||void 0===l?void 0:l[r];null!=o&&o>t&&(t=o)}return t===Number.NEGATIVE_INFINITY?null:t}function c(n,r,e){return null==r?void 0:r.map(function(r){return u({index:[e.findIndex(function(n){return n[0]===r.time[0]}),e.findIndex(function(n){return n[0]===r.time[1]})]},n[r.type])})}function m(r){for(var u=n(Date.now()).valueOf(),e=Number.MAX_VALUE,t=0,i=0,l=r.length;i<l;i++){var o=n(r[i][0]),a=Math.abs(o.diff(u,"milliseconds").valueOf());a<e&&o.valueOf()-u.valueOf()>0&&(e=a,t=i)}return t}function h(n,r){var u=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0,e=arguments.length>3&&void 0!==arguments[3]?arguments[3]:0,t=arguments.length>4&&void 0!==arguments[4]?arguments[4]:r.length;return r.reduce(function(n,r,i){return i>=e&&i<=t&&n.push(r[u]),n},[]).findIndex(function(r){return r==+n})}function g(n,r){if(null!=n&&null!=n.indices){var u=n.indices.find(function(n){return n.code===r});if(null!=u)return[u.indices.reduce(function(n,r){return r.value>0&&r.value<n?r.value:n},1/0),u.indices.reduce(function(n,r){return r.value>0&&r.value>n?r.value:n},-1/0)]}return[1/0,-1/0]}function I(n){return null!=n&&null!=n.indices?[n.indices.reduce(function(n,r){return r.value>0&&r.value<n?r.value:n},1/0),n.indices.reduce(function(n,r){return r.value>0&&r.value>n?r.value:n},-1/0)]:[1/0,-1/0]}function s(n,u){var e=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0;return+r(Math.max(Math.min(n.min,u[0])-.1*(Math.max(n.max,u[1])-Math.min(n.min,u[0])),e)).format("0.00")}function N(n,u){var e=arguments.length>2&&void 0!==arguments[2]?arguments[2]:1/0;return+r(Math.min(Math.max(n.max,u[1])+.1*(Math.max(n.max,u[1])-Math.min(n.min,u[0])),e)).format("0.00")}function x(r){var u=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;if((null==r?void 0:r.length)>0){var t=n(r[r.length-1][0]),i=r.findIndex(function(r){return t.diff(n(r[0]),"day")>=u});return-1===i?[r[0][0],r[r.length-1][0]]:[r[i][0],r[r.length-1][0]]}return e}function M(n){if(null!=n){var u=t.find(function(r){return n>=r.value});if(u)return r(n/u.value).format("0.000")}return n}function p(n){if(null!=n){var r=t.find(function(r){return n>=r.value});if(r)return r.symbol}return"万m³"}export{M as adjustCapacity,p as adjustCapacityUnit,a as avg,g as complexMinMaxIndex,o as ensure,h as findDataIndex,m as findNowIndex,x as getNearNDays,d as max,N as maximum,v as min,s as minimum,i as numeralFormat,I as simpleMinMaxIndex,f as sum,l as to,c as toArea};