Mam więc dane dotyczące akcelerometrii telefonicznej i chciałbym zrobić wideo z tego, jak wyglądał ruch telefonu. Więc użyłem matplotlib stworzyć 3D wykres danych:Aktualizacja na żywo z matplotlib
from mpl_toolkits.mplot3d import Axes3D
import matplotlib.pyplot as plt
import pandas as pd
import pickle
def pickleLoad(pickleFile):
pkl_file = open(pickleFile, 'rb')
data = pickle.load(pkl_file)
pkl_file.close()
return data
data = pickleLoad('/Users/ryansaxe/Desktop/kaggle_parkinsons/accelerometry/LILY_dataframe')
data = data.reset_index(drop=True)
fig = plt.figure()
ax = fig.add_subplot(111, projection='3d')
xs = data['x.mean']
ys = data['y.mean']
zs = data['z.mean']
ax.scatter(xs, ys, zs)
ax.set_xlabel('X Label')
ax.set_ylabel('Y Label')
ax.set_zlabel('Z Label')
plt.show()
Teraz czas jest ważne i jest faktycznie również czynnikiem, który widzę tylko jeden punkt w czasie, bo czas jest również czynnikiem, a to pozwala mi oglądać postęp w danych akcelerometrycznych!
Co mogę zrobić, aby był to wykres aktualizujący na żywo?
Jedyne, co mogę wymyślić, to mieć pętlę, która przechodzi wiersz po wierszu i tworzy wykres z wiersza, ale to otworzy tak wiele plików, że byłoby to szalone, ponieważ mam miliony wierszy.
Jak mogę utworzyć aktualizację na żywo?
nie pokaże mi niczego ... –
@RyanSaxe Jakiego systemu operacyjnego i jakiej wersji 'matplotlib' używasz? Czy mówisz, że _nothing_ pokazuje się z tym przykładem? – Hooked
Używam linuxa na osxie 10.8. I niezależnie od najnowszej wersji jest matplotlib, ponieważ pobrałem go 2 tygodnie temu. A kiedy to uruchomię, otwiera się konsola, ale wykres nigdy nie odbiera ani nie pokazuje –