как получить несколько файлов csv на линейном графике с помощью библиотеки Plotly python для получения результатов в браузере? - PullRequest
1 голос
/ 10 июля 2020

введите описание изображения здесь У меня есть несколько файлов csv для test_suites Synergy_graph22.csv, C7000_graph22.csv, Synergy-gen2_graph22.csv, например, у меня есть еще 10 файлов csv, которые имеют одинаковые столбцы во всех файлах build_id и проходят проценты. Мне нужно построить линейный график для всех этих файлов. где идентификатор сборки - это ось x, а процент проходов - ось y. Мне нужно получить линейный график для каждого файла csv (в среднем для каждого набора тестов). каждый файл csv соответствует одному набору test_suite.

Мне удалось получить график только для одного файла csv. Я могу получить график с помощью matplotlib, но мне нужен график на веб-странице / в браузере, я узнал, что мы можем использовать модуль Plotly / bookeh или любой модуль, который может получать те же результаты графика в Интернете, было бы полезно.

пожалуйста, помогите мне решить эту проблему. ниже приведен код, который я использовал. помогите мне преобразовать код с помощью модуля Plotly, чтобы получить линейный график для файлов csv, упомянутых выше.

import pandas as pd
import matplotlib.pyplot as plt
from pathlib import Path
%matplotlib inline  

# graphing parameters
plt.style.use('seaborn')
plt.rcParams['figure.figsize'] = (16.0, 10.0)

p = Path(r'c:\Users\shivarad\Documents')  # path to files
files = list(p.rglob('*graph22.csv'))  # get files

# everything for here down, belongs in one Jupyter cell
plt.figure()
for f in files:  # iterate through files
    file_name = f.stem  # get filename
    df = pd.read_csv(f, dtype={'Pass Percentage': int, 'original_pass_percent': int})  # create 
    dataframe

    print(df.head())  # this is here to verify df has data; it can be commented out or removed

    plt.plot('build ID', 'Pass Percentage', data=df, label=file_name)  # plot the data from each file

plt.legend(bbox_to_anchor=(1.04, 0.5), loc='center left')
plt.savefig('test.jpg')  # verify there's plot in the file
plt.show()  # outside the loop

1 Ответ

0 голосов
/ 10 июля 2020
fig = go.Figure()
for f in files: 
    file_name = f.stem  
    df = pd.read_csv(f, dtype={'Pass Percentage': int, 'original_pass_percent': 
         int})  
    print(df.head())  
    
    fig.add_trace(go.Scatter(x=df['build ID'], y=['Pass Percentage'],
                mode='lines',
                name=file_name))

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