Сохранение интерактивных фигур pyplot - PullRequest
1 голос
/ 26 мая 2020

Я сделал несколько пиплотов с интерактивными кнопками проверки для проекта некоторым из моих коллег. Кнопки проверки сделаны так, чтобы показывать одни и те же значения, но с разных датчиков. Я хочу отправить сгенерированные графики моим коллегам с работающими кнопками проверки. Однако, если я сохраню файл как JPG / PNG, функциональность будет потеряна. Есть ли способ отправить интерактивную фигуру python с работающими кнопками проверки другим людям, которые не являются python пользователями и действительно не разбираются в программировании?

Код не очень актуален, но размещен ниже:

import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
from matplotlib.widgets import CheckButtons
### FIGURE 1 ###

fig, ax = plt.subplots()
l0, = ax.plot(df1[vel_avg1],df1[htc1],color = 'C0', marker = 'o', label = 'HTC-1')
l1, = ax.plot(df1[vel_avg2],df1[htc2],color = 'C0', marker = 'o',label = 'HTC-2')
l2, = ax.plot(x_th, y_th, color = 'r', marker = 'o', markersize=0,
              label = 'Theoretical heat transfer coefficient')

plt.subplots_adjust(left=0.2)
ax.set_xlabel('Off-gas velocity (m/s)', fontsize = SMALL_SIZE)
ax.set_ylabel('Heat transfer coefficient (W/m2K)', fontsize = SMALL_SIZE)
lines1 = [l0, l1, l2]

# Make checkbuttons with all plotted lines with correct visibility
rax = plt.axes([0.05, 0.4, 0.1, 0.15])
labels1 = [str(line.get_label()) for line in lines1]
visibility1 = [line.get_visible() for line in lines1]
check1 = CheckButtons(rax, ('HTC-1','HTC-2'), visibility1)

def func(label):
    index = labels1.index(label)
    lines1[index].set_visible(not lines1[index].get_visible())
    plt.draw()

check1.on_clicked(func)

plt.suptitle('From ' + start_date + ' to ' + end_date)
plt.savefig('fig1.png')
plt.show()

Может быть, у seaborn есть функциональность, подобная этой или любой другой библиотеке?

...