Search code examples
pythonmatplotlibanacondapygalcontinuum

Pygal subplot (several figures)


I want to create a dashboard using Pygal on python 2.7 (Several plots in the same window) but the later doesn't have the subplot function, Is there a solution, without using bokeh or plotly?

Example on Matplotlib:

fig, axes = plt.subplots(ncols=4, nrows=5, figsize=(35,20))
for ax in axes.flatten():
    ax.plot([2,3,5,1])
plt.show()

Is there something like this on Pygal?


Solution

  • # -*- coding: utf-8 -*-
    import pygal
    
    list2=["A","B","C","D"]
    liste_A=[10,20,30,40]
    liste_B=[100,10,50,20]
    
    html_file=open("merged.html",'w')
    html_file.write("<html><head>…</head><body>"+"\n")
    
    success_plot =pygal.Line(height=400,include_x_axis=True,label_font_size=4,title_font_size=26,x_title='semaines',y_title='taux_debit',legend_at_bottom=True,x_label_rotation=90)
    success_plot.title = ('Title1')
    success_plot.x_labels = list2
    success_plot.add('PLOT 1', liste_A)
    success_plot.add('PLOT 2', liste_B)
    success_plot.render_to_file('graph1.svg') 
    html_file.write("      <object type=\"image/svg+xml\" data=\"graph1.svg\"></object>"+"\n")
    
    success_plot.title = ('Title2')
    success_plot.x_labels = list2
    success_plot.add('PLOT 2', liste_A)
    success_plot.add('PLOT 3', liste_B)
    success_plot.render_to_file('graph2.svg') 
    html_file.write("      <object type=\"image/svg+xml\" data=\"graph2.svg\"></object>"+"\n")
    
    
    html_file.write("</body></html>")