python-visualization / python-visualization/folium

Legend location in a DualMap

Ouverte
#1,167 3 commentaires 0 réactions 0 personnes assignées Voir sur GitHub

Personne n'a encore pris cette issue.

bug plugin
Langage dominant
Python
Étoiles
7.4k
Forks
2.3k
Merge moyen
17 h 22 min
PR mergées (30 j)
11

Description

Please add a code sample or a nbviewer link, copy-pastable if possible
# Your code here
# Add Dual-basemap
m = folium.plugins.DualMap(location=target_city, zoom_start = 9, tiles= 'openstreetmap')

# layer definition
layer_1= folium.features.Choropleth(
    geo_data= gjson
    ,name= 'column_1'
    ,key_on='feature.properties.postcode'
    ,data= zipcodes_geom
    ,columns= ['postcode', 'column_1']
    ,fill_color='YlGnBu'
    ,highlight=True
    ,legend_name='column_1'
    )
# popup window
tooltip_1= folium.features.GeoJsonTooltip(['postcode', 'column_1'])
layer_1.geojson.add_child(tooltip_1) # add it to the layer

#===========================================================================
layer_2= folium.features.Choropleth(
    geo_data= gjson
    ,name= 'column_2'
    ,key_on='feature.properties.postcode'
    ,data= zipcodes_geom
    ,columns= ['postcode', 'column_2']
    ,fill_color='BuPu'
    ,highlight=True
    ,legend_name='column_2'
    )
# popup window
tooltip_2 = folium.features.GeoJsonTooltip(['postcode', 'column_2'])
layer_2.geojson.add_child(tooltip_2) # add to the layer
#=============================================================
# dual map
# fg_both = folium.FeatureGroup(name='postcode_both').add_to(m)
fg_1= folium.FeatureGroup(name='column_1').add_to(m.m1)
fg_2= folium.FeatureGroup(name='column_2').add_to(m.m2)

layer_1.geojson.add_to(fg_1)
layer_2.geojson.add_to(fg_2)

# adding figure 1 and 2 to the basemap
fg_1.add_to(m.m1)
fg_2.add_to(m.m2)
#===========================
# add Layer control to Dual basemapa
# add legend for layer 1
folium.LayerControl(collapsed=True).add_to(m)
colormap_1= cm.linear.YlGnBu_06.scale(0,180)
colormap_1= colormap_1.to_step(index=[0,30,60,90,120,150,180])
colormap_1.caption= 'column_1'
colormap_1.add_to(m.m1)
# add legend for layer 2
colormap_2= cm.linear.PuBu_06.scale(0,180)
colormap_2= colormap_2.to_step(index=[0,14,29,43,58,72,87])
colormap_2.caption= 'column_2'
colormap_2.add_to(m.m2)
#===========================
# display map
display(m)
Problem description

Creating a Dual Map with two different geojson:
At the moment of adding the legends to the basemap (m), if I add one legend and define where to locate it could be grid 1(m.m1) or grid 2(m.m2) "It Works fine", but if I add the second legend, they get stack one on top of other, no mater that I assigned them to a different grid.
Also, It's there a way to move the legend to a different position in the basemap?

Expected Output

Would be that each grid of the Dual Map (basemap) contain one geojson and one legend.

Output of folium.__version__

0.8.3
dual_map

Guide de contribution

Ouvrir le guide de contribution

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Piste de recherche

Commencez par exécuter l’exemple DualMap fourni avec folium 0.8.3 et suivez les points d’entrée add_to de DualMap, LayerControl et colormap. C’est terminé lorsque chaque volet de carte affiche uniquement sa légende attribuée et que la position de la légende peut être modifiée ; aucun fichier du dépôt ni aucun test n’est nommé dans le rapport.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Évaluation

Stack technique
python
Domaine
data-visualization
Type d'issue
Bug
Difficulté
4/5
Temps estimé
3-5 jours
Activité
À l'abandon
Clarté
Plutôt claire
Accessibilité débutants
35/100

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.