mirror of
https://gitlab.com/wgp/dougal/software.git
synced 2025-12-06 13:17:08 +00:00
Add heatmaps to map (various data facets)
This commit is contained in:
@@ -52,7 +52,189 @@
|
||||
<span>Raw data</span>
|
||||
<label title="Show points"><v-icon small left class="mx-0">mdi-vector-point</v-icon> <input type="checkbox" value="seqrp" v-model="layerSelection"/></label>
|
||||
<label title="Show lines"><v-icon small left class="mx-0">mdi-vector-line</v-icon> <input type="checkbox" value="seqrl" v-model="layerSelection"/></label>
|
||||
|
||||
<div>
|
||||
<v-menu bottom offset-y class="mr-1 pb-1">
|
||||
<template v-slot:activator="{ on, attrs }">
|
||||
<v-icon small left class="mx-0" v-bind="attrs" v-on="on">mdi-dots-grid</v-icon>
|
||||
</template>
|
||||
<v-list nav dense>
|
||||
<v-list-item @click="setHeatmapValue('total_error')">
|
||||
<v-list-item-content>
|
||||
<v-list-item-title>Δ<span style="text-decoration:overline;">ij</span> Total error</v-list-item-title>
|
||||
</v-list-item-content>
|
||||
</v-list-item>
|
||||
<v-list-item @click="setHeatmapValue('delta_i')">
|
||||
<v-list-item-content>
|
||||
<v-list-item-title>Δi Inline error</v-list-item-title>
|
||||
</v-list-item-content>
|
||||
</v-list-item>
|
||||
<v-list-item @click="setHeatmapValue('delta_j')">
|
||||
<v-list-item-content>
|
||||
<v-list-item-title>Δj Crossline error</v-list-item-title>
|
||||
</v-list-item-content>
|
||||
</v-list-item>
|
||||
<v-list-item>
|
||||
<v-list-item-content>
|
||||
<v-menu bottom offset-y>
|
||||
<template v-slot:activator="{ on, attrs }">
|
||||
<v-list-item-title v-bind="attrs" v-on="on">
|
||||
Gun data <v-icon small right>mdi-chevron-right</v-icon>
|
||||
</v-list-item-title>
|
||||
</template>
|
||||
<v-list nav dense>
|
||||
<v-list-item>
|
||||
<v-list-item-content>
|
||||
<v-menu bottom offset-y>
|
||||
<template v-slot:activator="{ on, attrs }">
|
||||
<v-list-item-title v-bind="attrs" v-on="on">
|
||||
Pressure <v-icon small right>mdi-chevron-right</v-icon>
|
||||
</v-list-item-title>
|
||||
</template>
|
||||
<v-list nav dense>
|
||||
<v-list-item @click="setHeatmapValue('press_μ')">
|
||||
<v-list-item-content>
|
||||
<v-list-item-title>Mean (μ)</v-list-item-title>
|
||||
</v-list-item-content>
|
||||
</v-list-item>
|
||||
<v-list-item @click="setHeatmapValue('press_σ')">
|
||||
<v-list-item-content>
|
||||
<v-list-item-title>Standard deviation (σ)</v-list-item-title>
|
||||
</v-list-item-content>
|
||||
</v-list-item>
|
||||
<v-list-item @click="setHeatmapValue('press_R')">
|
||||
<v-list-item-content>
|
||||
<v-list-item-title>Range (R)</v-list-item-title>
|
||||
</v-list-item-content>
|
||||
</v-list-item>
|
||||
</v-list>
|
||||
</v-menu>
|
||||
</v-list-item-content>
|
||||
</v-list-item>
|
||||
<v-list-item>
|
||||
<v-list-item-content>
|
||||
<v-menu bottom offset-y>
|
||||
<template v-slot:activator="{ on, attrs }">
|
||||
<v-list-item-title v-bind="attrs" v-on="on">
|
||||
Depths <v-icon small right>mdi-chevron-right</v-icon>
|
||||
</v-list-item-title>
|
||||
</template>
|
||||
<v-list nav dense>
|
||||
<v-list-item @click="setHeatmapValue('depth_μ')">
|
||||
<v-list-item-content>
|
||||
<v-list-item-title>Mean (μ)</v-list-item-title>
|
||||
</v-list-item-content>
|
||||
</v-list-item>
|
||||
<v-list-item @click="setHeatmapValue('depth_σ')">
|
||||
<v-list-item-content>
|
||||
<v-list-item-title>Standard deviation (σ)</v-list-item-title>
|
||||
</v-list-item-content>
|
||||
</v-list-item>
|
||||
<v-list-item @click="setHeatmapValue('depth_R')">
|
||||
<v-list-item-content>
|
||||
<v-list-item-title>Range (R)</v-list-item-title>
|
||||
</v-list-item-content>
|
||||
</v-list-item>
|
||||
</v-list>
|
||||
</v-menu>
|
||||
</v-list-item-content>
|
||||
</v-list-item>
|
||||
<v-list-item>
|
||||
<v-list-item-content>
|
||||
<v-menu bottom offset-y>
|
||||
<template v-slot:activator="{ on, attrs }">
|
||||
<v-list-item-title v-bind="attrs" v-on="on">
|
||||
Deltas <v-icon small right>mdi-chevron-right</v-icon>
|
||||
</v-list-item-title>
|
||||
</template>
|
||||
<v-list nav dense>
|
||||
<v-list-item @click="setHeatmapValue('delta_μ')">
|
||||
<v-list-item-content>
|
||||
<v-list-item-title>Mean (μ)</v-list-item-title>
|
||||
</v-list-item-content>
|
||||
</v-list-item>
|
||||
<v-list-item @click="setHeatmapValue('delta_σ')">
|
||||
<v-list-item-content>
|
||||
<v-list-item-title>Standard deviation (σ)</v-list-item-title>
|
||||
</v-list-item-content>
|
||||
</v-list-item>
|
||||
<v-list-item @click="setHeatmapValue('delta_R')">
|
||||
<v-list-item-content>
|
||||
<v-list-item-title>Range (R)</v-list-item-title>
|
||||
</v-list-item-content>
|
||||
</v-list-item>
|
||||
</v-list>
|
||||
</v-menu>
|
||||
</v-list-item-content>
|
||||
</v-list-item>
|
||||
<v-list-item>
|
||||
<v-list-item-content>
|
||||
<v-menu bottom offset-y>
|
||||
<template v-slot:activator="{ on, attrs }">
|
||||
<v-list-item-title v-bind="attrs" v-on="on">
|
||||
Delay <v-icon small right>mdi-chevron-right</v-icon>
|
||||
</v-list-item-title>
|
||||
</template>
|
||||
<v-list nav dense>
|
||||
<v-list-item @click="setHeatmapValue('delay_μ')">
|
||||
<v-list-item-content>
|
||||
<v-list-item-title>Mean (μ)</v-list-item-title>
|
||||
</v-list-item-content>
|
||||
</v-list-item>
|
||||
<v-list-item @click="setHeatmapValue('delay_σ')">
|
||||
<v-list-item-content>
|
||||
<v-list-item-title>Standard deviation (σ)</v-list-item-title>
|
||||
</v-list-item-content>
|
||||
</v-list-item>
|
||||
<v-list-item @click="setHeatmapValue('delay_R')">
|
||||
<v-list-item-content>
|
||||
<v-list-item-title>Range (R)</v-list-item-title>
|
||||
</v-list-item-content>
|
||||
</v-list-item>
|
||||
</v-list>
|
||||
</v-menu>
|
||||
</v-list-item-content>
|
||||
</v-list-item>
|
||||
<v-list-item>
|
||||
<v-list-item-content>
|
||||
<v-menu bottom offset-y>
|
||||
<template v-slot:activator="{ on, attrs }">
|
||||
<v-list-item-title v-bind="attrs" v-on="on">
|
||||
Fill time <v-icon small right>mdi-chevron-right</v-icon>
|
||||
</v-list-item-title>
|
||||
</template>
|
||||
<v-list nav dense>
|
||||
<v-list-item @click="setHeatmapValue('fill_μ')">
|
||||
<v-list-item-content>
|
||||
<v-list-item-title>Mean (μ)</v-list-item-title>
|
||||
</v-list-item-content>
|
||||
</v-list-item>
|
||||
<v-list-item @click="setHeatmapValue('fill_σ')">
|
||||
<v-list-item-content>
|
||||
<v-list-item-title>Standard deviation (σ)</v-list-item-title>
|
||||
</v-list-item-content>
|
||||
</v-list-item>
|
||||
<v-list-item @click="setHeatmapValue('fill_R')">
|
||||
<v-list-item-content>
|
||||
<v-list-item-title>Range (R)</v-list-item-title>
|
||||
</v-list-item-content>
|
||||
</v-list-item>
|
||||
</v-list>
|
||||
</v-menu>
|
||||
</v-list-item-content>
|
||||
</v-list-item>
|
||||
</v-list>
|
||||
</v-menu>
|
||||
</v-list-item-content>
|
||||
</v-list-item>
|
||||
</v-list>
|
||||
</v-menu>
|
||||
<input type="checkbox" value="seqrh" v-model="layerSelection"/>
|
||||
</div>
|
||||
|
||||
<!--
|
||||
<label title="Show position error"><v-icon small left class="mx-0">mdi-dots-grid</v-icon> <input type="checkbox" value="seqrh" v-model="layerSelection"/></label>
|
||||
-->
|
||||
|
||||
<span>Final data</span>
|
||||
<label title="Show points"><v-icon small left class="mx-0">mdi-vector-point</v-icon> <input type="checkbox" value="seqfp" v-model="layerSelection"/></label>
|
||||
@@ -365,6 +547,7 @@ export default {
|
||||
maxPitch: 89
|
||||
},
|
||||
|
||||
heatmapValue: "total_error",
|
||||
crosshairsPosition: [],
|
||||
|
||||
searchText: "",
|
||||
@@ -887,6 +1070,12 @@ export default {
|
||||
}
|
||||
},
|
||||
|
||||
setHeatmapValue (v) {
|
||||
this.heatmapValue = v;
|
||||
console.log("Switched heatmap to", v);
|
||||
this.render();
|
||||
},
|
||||
|
||||
checkWebGLSupport() {
|
||||
const canvas = document.createElement('canvas');
|
||||
const gl = canvas.getContext('webgl2') || canvas.getContext('webgl');
|
||||
@@ -967,7 +1156,7 @@ export default {
|
||||
|
||||
//this.layersAvailable.seqfp = this.rawSequencesPointsGunDataLayer;
|
||||
|
||||
this.layersAvailable.seqrh = this.rawSequencesIJErrorLayer;
|
||||
this.layersAvailable.seqrh = this.heatmapLayer;
|
||||
|
||||
this.layersAvailable.crosshairs = (options = {}) => {
|
||||
return new IconLayer({
|
||||
|
||||
Reference in New Issue
Block a user