fix: 解决Beta中的 scatterGL 在超出轴线最大最小值范围时依旧渲染的问题
This commit is contained in:
parent
164e98dad2
commit
ad2a550668
|
@ -358,6 +358,8 @@ export default {
|
|||
|
||||
this.emitRangeChange([0, 256, 0, 256])
|
||||
this.reDrawRect()
|
||||
|
||||
this.rangeScatter()
|
||||
},
|
||||
|
||||
// 点击ROI
|
||||
|
@ -409,7 +411,8 @@ export default {
|
|||
|
||||
// 改为不可刷选状态
|
||||
chart.dispatchAction({
|
||||
type: 'takeGlobalCursor'
|
||||
type: 'takeGlobalCursor',
|
||||
rushOption: false
|
||||
})
|
||||
},
|
||||
|
||||
|
@ -436,11 +439,29 @@ export default {
|
|||
this.emitRangeChange([x1, x2, y1, y2])
|
||||
|
||||
this.reDrawRect()
|
||||
|
||||
this.rangeScatter()
|
||||
}
|
||||
|
||||
this.clearBrush(chart)
|
||||
},
|
||||
|
||||
/**
|
||||
* 因scatterGL 不受axis中max和min的控制,手动处理溢出部分
|
||||
*/
|
||||
rangeScatter() {
|
||||
const {
|
||||
xAxis: { min: minX, max: maxX },
|
||||
yAxis: { min: minY, max: maxY }
|
||||
} = this.twoDOption
|
||||
|
||||
const data = this.histogramDataList
|
||||
.filter(({ b, g, c }) => c && b >= minX && b <= maxX && g >= minY && g <= maxY)
|
||||
.map(({ b, g, c }) => [b, g, c])
|
||||
|
||||
this.twoDOption.series.data = data
|
||||
},
|
||||
|
||||
// 通知上层范围改变
|
||||
emitRangeChange(range) {
|
||||
this.$emit('rangeChange', range)
|
||||
|
@ -462,6 +483,7 @@ export default {
|
|||
}
|
||||
|
||||
this.reDrawRect()
|
||||
this.rangeScatter()
|
||||
},
|
||||
|
||||
// 重绘矩形框区域
|
||||
|
@ -705,6 +727,7 @@ export default {
|
|||
handler(newVal) {
|
||||
this.active = 0
|
||||
this.twoDOption.series.data = newVal.filter(item => item.c).map(item => [item.b, item.g, item.c]) // 设置2D Scatter数据
|
||||
this.rangeScatter()
|
||||
},
|
||||
immediate: true
|
||||
},
|
||||
|
|
Loading…
Reference in New Issue
Block a user