Unwanted margins in Dash Choropleth

Hey everyone,

I was planning to develop a Dash application with using a Turkey choropleth map. But there is a margin on both sides of the choropleth. I tried to adjust parameters and some “css hack” but doesn’t work. It will be OK to remove the legend.

My main goal is placing the map in a card. Just like this:

import pandas as pd
import requests
import plotly.express as px

# Read dataset and preprocess
df = pd.read_csv("https://gist.githubusercontent.com/Akaame/e9aaf3b17f54fba72a1a27a2a555fa82/raw/a93a367722671dbae93d7e06c44e975b6a637015/tr.csv")
df = df[['il', 'nufus']]

repo_url = 'https://raw.githubusercontent.com/alpers/Turkey-Maps-GeoJSON/master/tr-cities.json'
turkey_regions_geo = requests.get(repo_url).json()

fig = px.choropleth(data_frame=df, 
                    geojson=turkey_regions_geo, 
                    locations='il',
                    featureidkey='properties.name',
                    color='nufus',
                    color_continuous_scale="Reds",
                    scope="europe",
                   )

fig.update_geos(showcountries=False, showcoastlines=False, showland=False, fitbounds="locations",
               projection_rotation=dict(lon=36, lat=0, roll=0))

fig.update_layout(margin={"r":0,"t":0,"l":0,"b":0})
fig.show()

You can check this colab notebook: Google Colab

@cepel

You can plot something similar, but without rounded corners for your card,
updating layout as follows:

a= 50
fig.update_layout(height=800, coloraxis_showscale=False, paper_bgcolor='rgb(240,240, 240)', 
                  margin=dict(t=200, r=a,  l=a))

and updating geos:


fig.update_geos(showcountries=False, showcoastlines=False, showland=False, fitbounds="locations",
               projection_rotation=dict(lon=36, lat=0, roll=0), lataxis_range=[latmin, latmax))

latmin, and latmax are some values for latitude that reduce the upper and lower white region around your colormap.

Thank you for answer @empet

This line of code coloraxis_showscale=False made more clear the view. But now, the map stuck in a little rectangle. I’ve updated the Colab notebook, and here is the screenshot:

@cepel In my usual Jupyter Notebook it looked ok.
Change the height by trial and error, until it looks as you want. Eventualy set also the layout width.

That worked! Thank you so much @empet

After adding geo={"projection": {"type": "natural earth"}} in layout configuration, the margins disappeared. By the way, it will be better to add “bottom” in margin configuration.