С миллионами точек данных потребуется много усилий и увеличение, чтобы увидеть их в мельчайших деталях. Plotly имеет несколько хороших инструментов для увеличения и уменьшения масштаба графиков, а также для перемещения окна данных вдоль оси x.
Если вы справились с некоторым усреднением, вы можете построить скользящее среднее и приблизиться к ста тысячам пунктов.Вы можете сложить два вспомогательных графика друг на друга, чтобы увидеть оба столбца данных с достаточной детализацией.Конечно, вы можете усреднить их больше, но вы потеряете способность видеть мелкие детали.
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
def moving_avg(x, N=30):
return np.convolve(x, np.ones((N,))/N, mode='valid')
plt.figure(figsize = (16,12))
plt.subplot(3,1,1)
x = np.random.random(1000)
plt.plot(x, linewidth = 1, alpha = 0.5, label = 'linewidth = 1')
plt.plot(moving_avg(x, 10), 'C0', label = 'moving average, N = 10')
plt.xlim(0,len(x))
plt.legend(loc=2)
plt.subplot(3,1,2)
x = np.random.random(10000)
plt.plot(x, linewidth = 0.2, alpha = 0.5, label = 'linewidth = 0.2')
plt.plot(moving_avg(x, 100), 'C0', label = 'moving average, N = 100')
plt.xlim(0,len(x))
plt.legend(loc=2)
plt.subplot(3,1,3)
x = np.random.random(100000)
plt.plot(x, linewidth = 0.05, alpha = 0.5, label = 'linewidth = 0.05')
plt.plot(moving_avg(x, 500), 'C0', label = 'moving average, N = 500')
plt.xlim(0,len(x))
plt.legend(loc=2)
plt.tight_layout()
![enter image description here](https://i.stack.imgur.com/BCSMw.png)