Я создаю веб-сервис, используя Flask, который будет отображать графики matplotlib в браузере. Но если количество отображаемых графиков увеличивается, размер графиков становится очень маленьким. Я хочу отображать максимум 12 графиков на странице, пользователь должен прокрутить вниз, чтобы просмотреть другие графики.
Это начальное меню
Вот как отображаются графики сейчас.
Это код, который создает фиговый объект
fig, axs=plt.subplots(rows,columns, squeeze=False)
fig.suptitle('Vertically.stacked_subplots')
row=0
column=0
for data in datalist:
axs[row,column].plot(data)
column+=1
if(column==column_max):
column=0
row+=1
return fig
Часть кода, используя Flask
@app.route('/', methods=['GET', 'POST'])
def home():
if request.method == 'POST':
option = int(request.form['option'])
if option==1:
return redirect(url_for('click', option=option,user='all', cat='all' ))
if option==2:
user_name= request.form['viewbyuser1']
return redirect(url_for('click', option=option, user=user_name, cat='all'))
if option==3:
category=request.form['viewbycategory1']
return redirect(url_for('click', option=option, user='all', cat=category))
if option==4:
user_name= request.form['viewbyusr1']
category=request.form['viewbycat1']
return redirect(url_for('click', option=option,user=user_name, cat=category))
return render_template('graph_option.html')
@app.route('/<option>/<user>/<cat>')
def click(option, user, cat):
option=int(option)
if option==1:
fig=obj1.ViewAll()
if option==2:
fig = obj1.ViewByUser(user)
if option == 3:
fig = obj1.ViewByCat(cat)
if option == 4:
fig = obj1.ViewByCatUser(cat, user)
return mpld3.fig_to_html(fig)