title: Matplotlib savefig image : improve the quality of output?
body: <p>I posted sometimes , this kind of image in facebook but I don't know how can I improve the following code , to make sure that all can see and read it correctly :</p>
  <pre><code>fig ,axes = plt.subplots(ncols=1,nrows=2,constrained_layout=True,figsize=(30,30))
  
  # # ------------------------------Plot first figure --------------------------------------------
  palette = ['#F70A0A','#2A930C','#930C85']
  sns.set(rc={'figure.figsize':(30,30)},palette= palette, font_scale=1.7)
  # # pour les axes 
  
  ax1 = sns.lineplot(x=simple_line_final_df.index,y= 'Totaly olona',data=simple_line_final_df,hue='Madagascar Covid-19',style='Madagascar Covid-19',markers=True,dashes=False,ax=axes[0])
  
  # style 
  sns.set_style(&quot;darkgrid&quot; , {&quot;ytick.major.size&quot;: 10 , &quot;ytick.minor.size&quot;: 2 , 'grid.linestyle': '--'})
  plt.xticks(rotation=90)
  plt.xlabel('Daty', fontsize = 20)
  plt.ylabel('Totaly olona', fontsize = 20)
  plt.minorticks_on()
  plt.legend(loc='upper left')
  plt.grid(b=True, which='minor', color='#999999', linestyle='-', alpha=0.2 , axis='y')
  ax1.set_ylim(0)
  last_index = simple_line_final_df.last_valid_index()
  ax1.set_xlim(simple_line_final_df.first_valid_index(),simple_line_final_df.last_valid_index())
  
  # -----------------Put annotation ----------
  for value in ax1.lines:
      y = value.get_ydata()
      if len(y)&gt;0:
          ax1.annotate(f'{y[-1]:.2f}',xy=(1,y[-1]),xycoords=('axes fraction','data'),ha='left',va='center',color=value.get_color())
  
  #  ------------------------------Plot second figure barplot  --------------------------------------------
  
  sns.set(rc={'figure.figsize':(30,30)},palette=['#F70A0A','#2A930C','#930C85'], font_scale=1.7)
  # pour les axes 
  ax = sns.barplot(x=df_final_seaborn.index,y='Isan\'ny olona',data=df_final_seaborn,hue='Covid-19 Madagascar',ax=axes[1])
  sns.set_style(&quot;darkgrid&quot; , {&quot;ytick.major.size&quot;: 10 , &quot;ytick.minor.size&quot;: 2 , 'grid.linestyle': '--'})
  plt.xticks(rotation=90)
  plt.xlabel('Daty', fontsize = 20)
  plt.ylabel('Isan\'ny olona', fontsize = 20)
  plt.minorticks_on()
  plt.legend(loc='upper left')
  plt.grid(b=True, which='minor', color='#999999', linestyle='-', alpha=0.2 , axis='y')
  ax.xaxis.set_major_formatter(plt.FixedFormatter(df_sea.index.to_series().dt.strftime(&quot;%Y-%m-%d&quot;)))
  for patch in ax.patches:
      x , width , height = patch.get_x(),patch.get_width(),patch.get_height()
      color = patch.get_facecolor()
      #ignore . and nan values 
      if height is None or height ==0:continue
        
      
      ax.text(x+width/2,height+0.1,height.astype(int),ha='center',color=color)
  
  plt.savefig(&quot;Sary_finale/04-07-2020 marary_sitrana.jpg&quot; , dpi = 72 , orientation = &quot;landscape&quot;)
  plt.show()
  </code></pre>
  <p>the problem is when I uploaded it on facebook it's difficult for me to see the details .</p>
  <p><a href="https://i.stack.imgur.com/qChBz.jpg" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/qChBz.jpg" alt="enter image description here" /></a></p>
  <p>I checked here in another question which had the same issue that it's better to save it in .eps but when I change the savefig to :</p>
  <pre><code>plt.savefig(&quot;Sary_finale/04-07-2020 marary_sitrana.eps&quot; , dpi = 72 , orientation = &quot;landscape&quot;)
  plt.show()
  </code></pre>
  <p>I get the message and the result is the same</p>
  <pre><code> No handles with labels found to put in legend.
      The PostScript backend does not support transparency; partially transparent artists will be rendered opaque.
  </code></pre>
  <p>finally I decided to keep the figsize to figsize=(25,15) and added fontsize=30 in annotate section :</p>
  <pre><code># -----------------Put annotation ----------
  for value in ax1.lines:
      y = value.get_ydata()
      if len(y)&gt;0:
          ax1.annotate(f'{y[-1]:.2f}',xy=(1,y[-1]),xycoords=('axes fraction','data'),ha='left',va='center',color=value.get_color(),
                      fontsize = 30)
  </code></pre>