You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
zch b5eda717e1 refactor(蒸汽曲线图表展示和数据处理): 优化y轴
- 修改了数据抽样和断点处理逻辑,提高图表性能- 优化了停电数据统计和导出功能
- 调整了图表轴设置和提示格式,提升用户体验
- 过滤了无效和负值数据,确保数据准确性

-当时间范围扩大,数据量增加时,Y轴的范围显示异常,尤其是瞬时流量和压力图表的Y轴刻度以及标题中显示的平均值都变成了非常大的负数,而温度图表则表现正常。
 这强烈暗示,在查询大数据量时,后端返回的原始数据中,针对“瞬时流量”和“压力”这两个字段,可能混入了一些表示极大负值的异常数据点(例如,字符串形式的 "-500000" 或者一个非常大的负数)。而“温度”数据则没有这类异常值。
 我们之前的修改解决了 NaN 值对平均值计算的影响,但如果原始数据本身就是一个有效的负数(即使它在业务上不合理),parseFloat 会正确转换它,isNaN 也不会将其过滤,所以它会参与平均值计算,并可能影响Echarts的Y轴自动范围判断。
 用户您调整的 oneHourMs(停电判断阈值从1小时改为2小时)本身不直接导致这个问题,但它可能会改变“停电”标记点的数量。如果停电标记点变少或没有,Echarts Y轴的最小值设定会更多地依赖其自身的自动计算逻辑 (return value.min)。若此时自动计算的 value.min 因异常数据而变得非常小(即巨大负数),问题就会显现。
 为了解决这个问题,并考虑到这些指标(瞬时流量、压力、温度)在业务上通常不应为负值,我将进行以下两处修改:
 在 processDataBreaks 函数中:修改平均值的计算逻辑。在对 fluxFlow、press、temperature这些字段计算平均值之前,我会过滤掉所有小于0的数值。这样可以确保平均值基于有效的、非负的数据进行计算。
 在 createChartOption 函数中:对于“瞬时流量”、“压力”、“温度”这三个图表,我会将Y轴的最小值 (option.yAxis.min) 强制设置为 0。这样可以确保Y轴从一个合理的基准开始,避免显示不切实际的巨大负范围。
1 month ago
bin 初始化 9 months ago
build 初始化 9 months ago
public 初始化 9 months ago
src refactor(蒸汽曲线图表展示和数据处理): 优化y轴 1 month ago
.editorconfig 初始化 9 months ago
.env.development 亨通 9 months ago
.env.production 亨通 9 months ago
.env.staging 亨通 9 months ago
.eslintignore 初始化 9 months ago
.eslintrc.js 初始化 9 months ago
.gitignore 初始化 9 months ago
README.md 初始化 9 months ago
babel.config.js 初始化 9 months ago
jsconfig.json 初始化 9 months ago
package.json feat(datepicker): 替换 el-date-picker 为 vue2-datepicker 4 months ago
vue.config.js 亨通 9 months ago

README.md

开发

# 克隆项目
git clone https://gitee.com/y_project/RuoYi-Vue

# 进入项目目录
cd ruoyi-ui

# 安装依赖
npm install

# 建议不要直接使用 cnpm 安装依赖,会有各种诡异的 bug。可以通过如下操作解决 npm 下载速度慢的问题
npm install --registry=https://registry.npmmirror.com

# 启动服务
npm run dev

浏览器访问 http://localhost:80

发布

# 构建测试环境
npm run build:stage

# 构建生产环境
npm run build:prod