title: Avoid overlaping labels at matplotlib + geopandas
body: <p>I´ve found many examples on how to avoid overlaping text on matplotlib but none that I could figure out how to apply to my case. </p>
  
  <p>I have a dataframe (mapadf1) with some information about brazilian municipalities and i ploted over a shapefile of São Paulo's state (sp).</p>
  
  <p>I created a variable "l", that containg the name of the municipality and the number I want to highlight. When the number is 0, the string is blank.</p>
  
  <p>Ok so I managed to plot my map with the following code:</p>
  
  <pre><code># set the range for the choropleth values
  vmin, vmax = 0, 1
  
  # create figure and axes for Matplotlib
  fig, ax = plt.subplots(1, figsize=(30, 10))
  
  # remove the axis que mostra latitude e longitude
  ax.axis('off')
  
  # add a title and annotation
  ax.set_title('Número leitos inaugurados: 22/03', fontdict={'fontsize': '25', 'fontweight' : '3'})
  ax.annotate('Fonte: Governo do Estado de São Paulo', xy=(0.6, .05), xycoords='figure fraction', fontsize=12, color='#555555')
  
  # empty array for the data range
  sm.set_array([]) # or alternatively sm._A = []. Not sure why this step is necessary, but many recommends it
  
  # create map
  mapa_df1.plot(column='tem_leito',cmap='Paired', linewidth=0.8, ax=ax, edgecolor='0.8')
  
  # Add Labels
  mapa_df1['coords'] = mapa_df1['geometry'].apply(lambda x: x.representative_point().coords[:])
  mapa_df1['coords'] = [coords[0] for coords in mapa_df1['coords']]
  
  for idx, row in mapa_df1.iterrows():
      plt.annotate(s=row['l'], xy=row['coords'])
  </code></pre>
  
  <p>And my map:</p>
  
  <p><a href="https://i.stack.imgur.com/rdHXg.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/rdHXg.png" alt="enter image description here"></a></p>
  
  <p>How can I avoid the overlaping text?!</p>
  
  <p>Thanks in advance!</p>