Как создать веб-отчет из моих диаграмм Python - PullRequest
0 голосов
/ 05 июня 2018

Я написал следующий код для генерации пары диаграмм с использованием библиотеки plotly:

#Read the excel file from local spreadsheet
df = pd.read_excel(r'C:\Users\llopez\Documents\Temp\Python finished goods.xlsx', sheet_name='Sheet1')

#Create a dictionary of tuples by year
dict_of_fgs = dict(tuple(df.groupby('Year')))

#Loop through the elements of the dictionary of finished goods and plots them grouping FG, type and calculating the sum of quantities. Stacking by type
for k in dict_of_fgs:
    df_grouped = dict_of_fgs[k].groupby(['Finished_Good','Type'],sort=False)['Qty'].sum().unstack('Type').iplot(kind='bar',barmode='stack', title='FG Chart')

Это дает следующие диаграммы:

FG Chart 2017FG Chart 2018

Диаграммы - это именно то, что мне нужно, так что теперь я ищу способ создания веб-отчета и предоставления его пользователям.

Я изучил следующий учебник, но могу:Кажется, я не могу адаптировать мой код к этому, поскольку мой код проходит по словарю и генерирует график для каждого ключа (год).

Как я могу сгенерировать веб-отчет с учетом созданных мною диаграмм?

Заранее благодарим всех экспертов в данной области за все замечательные идеи о том, как этого добиться.Я ценю помощь.

Ответы [ 2 ]

0 голосов
/ 06 июня 2018

Если я правильно понял, вам нужны диаграммы Plotly в отчете или на панели инструментов HTML .

Если это так, то вам стоит взглянуть на Rmarkdown в RStudio.Несмотря на то, что это R разметка, а не Py разметка, она поддерживает Python.

Может помочь некоторое знакомство с R, но если это не так, неНе беспокойтесь, вы можете получить свой HTML-отчет, используя только Python и Markdown.

Вам необходимо установить RStudio, а пакеты Rmarkdown, knitr и reticulate, используя:

  1. установить R
  2. установить RStudio (есть бесплатная версия)
  3. Выполнить следующую команду для установки необходимых пакетов:

    install.packages(c('Rmarkdown', 'knitr', 'reticulate'))
    
  4. Вы можете создать документ Rmarkdown и сгенерировать отчет HTML.

Некоторые документы здесь:

И еще один вопрос, на который я ответил некоторое время назад, о создании графика Plotly в python и вставке его с помощью R в отчет HTML: https://stackoverflow.com/a/50194462/2699660

Если вы неЕсли вы не хотите использовать R, вы можете, как в ответе выше, сгенерировать HTML-график локально в автономном режиме и вставить его.в отчет HTML, используя <iframe>, например:

<iframe src="path_to_your_plot.html"
    height="600" width="100%"
    scrolling="no" seamless="seamless"
    frameBorder="0">
</iframe>
0 голосов
/ 05 июня 2018

простой ответ - использовать matplotlib savefig, чтобы сгенерировать изображение и отправить его на ваш веб-сайт

savefig('foo.png')

, как объяснено: Сохранить график в файл изображениявместо того, чтобы отображать его с помощью Matplotlib

В противном случае для динамических диаграмм вам нужно будет отправлять данные в браузер с помощью API (т. е. ваш веб-сайт должен вызывать API для получения данных), а затем используйте некоторую библиотеку диаграмм (или создайте свою собственную), чтобы отобразить диаграмму с Javascript на странице HTML.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...