fix(deck.gl Multiple Layer Chart): Add Contour and Heatmap Layer as options (#25923)
This commit is contained in:
parent
dfc614bdc3
commit
64ba5797df
|
|
@ -26,3 +26,5 @@ export { default as PathChartPlugin } from './layers/Path';
|
||||||
export { default as PolygonChartPlugin } from './layers/Polygon';
|
export { default as PolygonChartPlugin } from './layers/Polygon';
|
||||||
export { default as ScatterChartPlugin } from './layers/Scatter';
|
export { default as ScatterChartPlugin } from './layers/Scatter';
|
||||||
export { default as ScreengridChartPlugin } from './layers/Screengrid';
|
export { default as ScreengridChartPlugin } from './layers/Screengrid';
|
||||||
|
export { default as ContourChartPlugin } from './layers/Contour';
|
||||||
|
export { default as HeatmapChartPlugin } from './layers/Heatmap';
|
||||||
|
|
|
||||||
|
|
@ -45,16 +45,16 @@ function setTooltipContent(formData: QueryFormData) {
|
||||||
<div className="deckgl-tooltip">
|
<div className="deckgl-tooltip">
|
||||||
<TooltipRow
|
<TooltipRow
|
||||||
label={t('Start (Longitude, Latitude): ')}
|
label={t('Start (Longitude, Latitude): ')}
|
||||||
value={`${o.object.sourcePosition[0]}, ${o.object.sourcePosition[1]}`}
|
value={`${o.object?.sourcePosition?.[0]}, ${o.object?.sourcePosition?.[1]}`}
|
||||||
/>
|
/>
|
||||||
<TooltipRow
|
<TooltipRow
|
||||||
label={t('End (Longitude, Latitude): ')}
|
label={t('End (Longitude, Latitude): ')}
|
||||||
value={`${o.object.targetPosition[0]}, ${o.object.targetPosition[1]}`}
|
value={`${o.object?.targetPosition?.[0]}, ${o.object?.targetPosition?.[1]}`}
|
||||||
/>
|
/>
|
||||||
{formData.dimension && (
|
{formData.dimension && (
|
||||||
<TooltipRow
|
<TooltipRow
|
||||||
label={`${formData.dimension}: `}
|
label={`${formData?.dimension}: `}
|
||||||
value={`${o.object.cat_color}`}
|
value={`${o.object?.cat_color}`}
|
||||||
/>
|
/>
|
||||||
)}
|
)}
|
||||||
</div>
|
</div>
|
||||||
|
|
|
||||||
|
|
@ -93,13 +93,13 @@ const recurseGeoJson = (
|
||||||
|
|
||||||
function setTooltipContent(o: JsonObject) {
|
function setTooltipContent(o: JsonObject) {
|
||||||
return (
|
return (
|
||||||
o.object.extraProps && (
|
o.object?.extraProps && (
|
||||||
<div className="deckgl-tooltip">
|
<div className="deckgl-tooltip">
|
||||||
{Object.keys(o.object.extraProps).map((prop, index) => (
|
{Object.keys(o.object.extraProps).map((prop, index) => (
|
||||||
<TooltipRow
|
<TooltipRow
|
||||||
key={`prop-${index}`}
|
key={`prop-${index}`}
|
||||||
label={`${prop}: `}
|
label={`${prop}: `}
|
||||||
value={`${o.object.extraProps[prop]}`}
|
value={`${o.object.extraProps?.[prop]}`}
|
||||||
/>
|
/>
|
||||||
))}
|
))}
|
||||||
</div>
|
</div>
|
||||||
|
|
|
||||||
|
|
@ -30,7 +30,7 @@ function setTooltipContent(o: JsonObject) {
|
||||||
<div className="deckgl-tooltip">
|
<div className="deckgl-tooltip">
|
||||||
<TooltipRow
|
<TooltipRow
|
||||||
label={t('Centroid (Longitude and Latitude): ')}
|
label={t('Centroid (Longitude and Latitude): ')}
|
||||||
value={`(${o.coordinate[0]}, ${o.coordinate[1]})`}
|
value={`(${o?.coordinate[0]}, ${o?.coordinate[1]})`}
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
);
|
);
|
||||||
|
|
|
||||||
|
|
@ -29,7 +29,7 @@ import { Point } from '../../types';
|
||||||
|
|
||||||
function setTooltipContent(o: JsonObject) {
|
function setTooltipContent(o: JsonObject) {
|
||||||
return (
|
return (
|
||||||
o.object.extraProps && (
|
o.object?.extraProps && (
|
||||||
<div className="deckgl-tooltip">
|
<div className="deckgl-tooltip">
|
||||||
{Object.keys(o.object.extraProps).map((prop, index) => (
|
{Object.keys(o.object.extraProps).map((prop, index) => (
|
||||||
<TooltipRow
|
<TooltipRow
|
||||||
|
|
|
||||||
|
|
@ -62,27 +62,27 @@ function getElevation(
|
||||||
|
|
||||||
function setTooltipContent(formData: PolygonFormData) {
|
function setTooltipContent(formData: PolygonFormData) {
|
||||||
return (o: JsonObject) => {
|
return (o: JsonObject) => {
|
||||||
const metricLabel = formData.metric.label || formData.metric;
|
const metricLabel = formData?.metric?.label || formData?.metric;
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<div className="deckgl-tooltip">
|
<div className="deckgl-tooltip">
|
||||||
{o.object.name && (
|
{o.object?.name && (
|
||||||
<TooltipRow
|
<TooltipRow
|
||||||
// eslint-disable-next-line prefer-template
|
// eslint-disable-next-line prefer-template
|
||||||
label={t('name') + ': '}
|
label={t('name') + ': '}
|
||||||
value={`${o.object.name}`}
|
value={`${o.object.name}`}
|
||||||
/>
|
/>
|
||||||
)}
|
)}
|
||||||
{o.object[formData.line_column] && (
|
{o.object?.[formData?.line_column] && (
|
||||||
<TooltipRow
|
<TooltipRow
|
||||||
label={`${formData.line_column}: `}
|
label={`${formData.line_column}: `}
|
||||||
value={`${o.object[formData.line_column]}`}
|
value={`${o.object[formData.line_column]}`}
|
||||||
/>
|
/>
|
||||||
)}
|
)}
|
||||||
{formData.metric && (
|
{formData?.metric && (
|
||||||
<TooltipRow
|
<TooltipRow
|
||||||
label={`${metricLabel}: `}
|
label={`${metricLabel}: `}
|
||||||
value={`${o.object[metricLabel]}`}
|
value={`${o.object?.[metricLabel]}`}
|
||||||
/>
|
/>
|
||||||
)}
|
)}
|
||||||
</div>
|
</div>
|
||||||
|
|
|
||||||
|
|
@ -48,17 +48,17 @@ function setTooltipContent(
|
||||||
<TooltipRow
|
<TooltipRow
|
||||||
// eslint-disable-next-line prefer-template
|
// eslint-disable-next-line prefer-template
|
||||||
label={t('Longitude and Latitude') + ': '}
|
label={t('Longitude and Latitude') + ': '}
|
||||||
value={`${o.object.position[0]}, ${o.object.position[1]}`}
|
value={`${o.object?.position?.[0]}, ${o.object?.position?.[1]}`}
|
||||||
/>
|
/>
|
||||||
{o.object.cat_color && (
|
{o.object?.cat_color && (
|
||||||
<TooltipRow
|
<TooltipRow
|
||||||
// eslint-disable-next-line prefer-template
|
// eslint-disable-next-line prefer-template
|
||||||
label={t('Category') + ': '}
|
label={t('Category') + ': '}
|
||||||
value={`${o.object.cat_color}`}
|
value={`${o.object?.cat_color}`}
|
||||||
/>
|
/>
|
||||||
)}
|
)}
|
||||||
{o.object.metric && (
|
{o.object?.metric && (
|
||||||
<TooltipRow label={`${label}: `} value={`${o.object.metric}`} />
|
<TooltipRow label={`${label}: `} value={`${o.object?.metric}`} />
|
||||||
)}
|
)}
|
||||||
</div>
|
</div>
|
||||||
);
|
);
|
||||||
|
|
|
||||||
|
|
@ -45,12 +45,12 @@ function setTooltipContent(o: JsonObject) {
|
||||||
<TooltipRow
|
<TooltipRow
|
||||||
// eslint-disable-next-line prefer-template
|
// eslint-disable-next-line prefer-template
|
||||||
label={t('Longitude and Latitude') + ': '}
|
label={t('Longitude and Latitude') + ': '}
|
||||||
value={`${o.coordinate[0]}, ${o.coordinate[1]}`}
|
value={`${o?.coordinate?.[0]}, ${o?.coordinate?.[1]}`}
|
||||||
/>
|
/>
|
||||||
<TooltipRow
|
<TooltipRow
|
||||||
// eslint-disable-next-line prefer-template
|
// eslint-disable-next-line prefer-template
|
||||||
label={t('Weight') + ': '}
|
label={t('Weight') + ': '}
|
||||||
value={`${o.object.cellWeight}`}
|
value={`${o.object?.cellWeight}`}
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
);
|
);
|
||||||
|
|
|
||||||
|
|
@ -25,6 +25,8 @@ import { getLayer as deck_scatter } from './Scatter/Scatter';
|
||||||
import { getLayer as deck_geojson } from './Geojson/Geojson';
|
import { getLayer as deck_geojson } from './Geojson/Geojson';
|
||||||
import { getLayer as deck_arc } from './Arc/Arc';
|
import { getLayer as deck_arc } from './Arc/Arc';
|
||||||
import { getLayer as deck_polygon } from './Polygon/Polygon';
|
import { getLayer as deck_polygon } from './Polygon/Polygon';
|
||||||
|
import { getLayer as deck_heatmap } from './Heatmap/Heatmap';
|
||||||
|
import { getLayer as deck_contour } from './Contour/Contour';
|
||||||
|
|
||||||
const layerGenerators = {
|
const layerGenerators = {
|
||||||
deck_grid,
|
deck_grid,
|
||||||
|
|
@ -35,6 +37,8 @@ const layerGenerators = {
|
||||||
deck_geojson,
|
deck_geojson,
|
||||||
deck_arc,
|
deck_arc,
|
||||||
deck_polygon,
|
deck_polygon,
|
||||||
|
deck_heatmap,
|
||||||
|
deck_contour,
|
||||||
};
|
};
|
||||||
|
|
||||||
export default layerGenerators;
|
export default layerGenerators;
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue