Несколько CSV-файлов в диаграмме Plotly - PullRequest
0 голосов
/ 03 марта 2020

У меня есть несколько файлов CSV. Я хочу сделать диаграмму, но она генерирует мусор. Когда я генерирую один график, это нормально, но несколько графиков не в порядке. Если я вижу индивидуальный график, это работает. Но не могу видеть оба одновременно. Пример:

import plotly.graph_objects as go
import pandas as pd

df_usgsn03 = pd.read_csv('Graph_Data/MME/USGSN03/mme.txt',sep='|')
df_usgsn04 = pd.read_csv('Graph_Data/MME/USGSN04/mme.txt',sep='|')

fig = go.Figure()
fig.add_trace(go.Scatter(
                  x=df_usgsn03['Measurement Time'],
                    y=df_usgsn03['VS.MM.TaLaMisconfigurationMscSupervision'].diff(),
                    ))

fig.add_trace(go.Scatter(
                x=df_usgsn04['Measurement Time'],
                    y=df_usgsn04['VS.MM.TaLaMisconfigurationMscSupervision'].diff(),
                    ))

fig.show()

enter image description here enter image description here

enter image description here

Файлы CSV: https://gofile.io/?c=g0vztw

Ответы [ 2 ]

0 голосов
/ 04 марта 2020

Нашел проблему. Проблема заключается в значении Measure Time . Это было не похоже на оба CSV. Я исключил вторую часть из времени измерения .... Тогда все стало хорошо. Я изменил это как:

pd.to_datetime (df_usgsn03 ['Время измерения']). Apply (лямбда-т: t.replace (секунда = 0)

Спасибо всем.

0 голосов
/ 03 марта 2020

Это происходит из-за того, что график наивно строит записи в том порядке, в котором они получают их из кадра данных. Вам нужно отсортировать кадры данных по Measurement Time.

Попробуйте это:

import plotly.graph_objects as go
import pandas as pd

df_usgsn03 = pd.read_csv('Graph_Data/MME/USGSN03/mme.txt',sep='|')
df_usgsn04 = pd.read_csv('Graph_Data/MME/USGSN04/mme.txt',sep='|')

# Sort both by 'Measurement Time'
df_usgsn03_sorted = df_usgsn03.sort_values(by='Measurement Time')
df_usgsn04_sorted = df_usgsn04.sort_values(by='Measurement Time')


fig = go.Figure()
fig.add_trace(
    go.Scatter(
        x=df_usgsn03_sorted['Measurement Time'],
        y=df_usgsn03_sorted['Value'].diff(),
    ))

fig.add_trace(
    go.Scatter(
        x=df_usgsn04_sorted['Measurement Time'],
        y=df_usgsn04_sorted['Value'].diff(),
    ))


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