Mysql
 sql >> база данни >  >> RDS >> Mysql

Как да актуализирате графика с помощта на matplotlib

Документацията е малко по-лека за обяснението как да използватеFuncAnimation. Въпреки това има примери в галерията и уроци за блогове, като на Джейк Вандерплас и PDF на Сам Долан .

Този пример от урока на Джейк Вандерплас е може би "Hello World" на анимацията на matplotlib:

from __future__ import division
import numpy as np
import matplotlib.pyplot as plt
import matplotlib.animation as animation

def init():
    return [line]

def animate(i, ax, line):
    x = np.linspace(0, 2*np.pi, N) + i/(N*2)
    ax.set_xlim(x.min(), x.max())
    line.set_data(x, np.sin(x))
    return [line]

N = 100
fig, ax = plt.subplots()
line, = ax.plot([], [])
ax.set_xlim(0, 2*np.pi)
ax.set_ylim(-1, 1)

ani = animation.FuncAnimation(
    fig, animate, init_func=init, interval=0, frames=int(4*np.pi*N), 
    repeat=True, blit=True, fargs=[ax, line])
plt.show()

Променете различни стойности или редове код и вижте какво се случва. Вижте какво се случва, ако промените return [line] към нещо друго. Ако изучавате и играете с тези примери, можете да научите как парчетата пасват заедно.

След като разберете този пример, трябва да можете да го модифицирате, за да отговаря на целта си.

Ако имате проблеми, публикувайте кода си и опишете какво съобщение за грешка или неправилно поведение виждате.

Някои съвети:

  • Тъй като анимацията изисква извикване на line.set_data , не мисля, че можете да използвате df.plot() на Pandas . Всъщност не съм сигурен дали Pandas DataFrame е полезен тук. Може да е по-добре да изсмучете данните в списъци или масиви NumPy и да ги предадете на line.set както по-горе, без да се намесват Pandas.

  • Отварянето на връзка с базата данни трябва да се извърши веднъж. animate се обажда много пъти. Така че е по-добре да дефинирате conn и c и query -- всичко, което не се променя с всяко извикване на animate --извън animate , и ги предайте обратно като аргументи на animate чрез fargs параметър.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. опитвайки се да се свърже с отдалечен mysql от .asp страница

  2. SQLDependency върху база данни MariaDB/MySQL

  3. Как да получа броене, дори ако няма резултати, съответстващи на mysql?

  4. Laravel:как да добавите клауза where с помощта на конструктора на заявки?

  5. достъпът е отказан при опит за свързване с mysql с помощта на източник на данни tomcat