diff --git a/public/app/plugins/panel/geomap/layers/data/markersLayer.tsx b/public/app/plugins/panel/geomap/layers/data/markersLayer.tsx index 9c64fd33d15..d58446b9552 100644 --- a/public/app/plugins/panel/geomap/layers/data/markersLayer.tsx +++ b/public/app/plugins/panel/geomap/layers/data/markersLayer.tsx @@ -87,8 +87,7 @@ export const markersLayer: MapLayerRegistryItem = { let hasVector = hasText; const layers = new LayerGroup({ - // If text and no symbol, only show text - fall back on default symbol - layers: hasVector && symbol ? [symbolLayer, vectorLayer] : hasVector && !symbol ? [vectorLayer] : [symbolLayer], + layers: hasVector ? (symbol ? [symbolLayer, vectorLayer] : [vectorLayer]) : [symbolLayer], }); const legendProps = new ReplaySubject(1); @@ -176,7 +175,11 @@ export const markersLayer: MapLayerRegistryItem = { processedMarkers.add(markerKey); } - if (!isLineString) { + // Set style to be used by LineString + if (isLineString) { + const lineStringStyle = style.maker(values); + feature.setStyle(lineStringStyle); + } else { const colorString = tinycolor(theme.visualization.getColorByName(values.color)).toString(); const colorValues = getRGBValues(colorString); @@ -199,12 +202,6 @@ export const markersLayer: MapLayerRegistryItem = { const textStyle = textMarker(values); feature.setStyle(textStyle); } - - // Set style to be used by LineString - if (isLineString) { - const lineStringStyle = style.maker(values); - feature.setStyle(lineStringStyle); - } }); // Update hasVector state after processing all features @@ -213,10 +210,8 @@ export const markersLayer: MapLayerRegistryItem = { // Update layer visibility based on current hasVector state const layersArray = layers.getLayers(); layersArray.clear(); - if (hasVector && symbol) { - layersArray.extend([symbolLayer, vectorLayer]); - } else if (hasVector && !symbol) { - layersArray.extend([vectorLayer]); + if (hasVector) { + layersArray.extend(symbol ? [symbolLayer, vectorLayer] : [vectorLayer]); } else { layersArray.extend([symbolLayer]); }