How to label each point on Streamlit map

Hello, all.

I was building an app to visualize weather patterns with a geospatial map. After I have coordinates for a point, how can I put labels over each point? I need it to encode the temperature for that particular location and I want it to be visible without hovering over or doing anything extra. Is there such functionality? Or can anyone suggest another option for doing this?

Hi @BexTuychiev, welcome to the Streamlit community!

It’s important to note that the st.map functionality is syntactic sugar to st.pydeck_chart. So once things don’t seem possible using st.map, you can get more functionality by using st.pydeck_chart and specifying the exact chart specification you would like.

Additionally, there is the streamlit-folium, which allows the use of the Folium Python package, which as I understand is a bit more popular than pydeck.

1 Like

Hi, thanks for your reply. I already found a good alternative for the task. I am using the plotly scatter_mapbox. Though it does not display each point’s label, I can hover over to see them.

Actually, the app I had in mind is ready and I wanted to deploy it. I already shared it in the Show Community section. You can see it on this GitHub too.

I wanted to write a Medium article for TDS explaining my app but I cannot show it because I have not received my reply from Streamlit Sharing.

It would be great if you could extend an invite beforehand, @randyzwitch. Thanks!

1 Like

You should get an invite today, thanks for writing about your project!

Yes, as randyzwitch mentioned use pydeck for more specific requests. I wasn’t able to pitch and label data with st.map. Pydeck solved this.