示例#1
0
from pathlib import Path
from matplotlib.animation import FuncAnimation 
import GraphFunc as func


Data = np.load(Path.cwd()/'Datafiles'/'datafile.npy', allow_pickle=True)
graphtitle = 'Total Energy over 500 seconds Euler-Cromer at dt = 0.01s'
graphname = 'graph.png'



kin1 = func.getKE1(Data)
kin2 = func.getKE2(Data)
pot1 = func.getPE1(Data)
pot2 = func.getPE2(Data)
Timelist = func.getTime(Data)
Elist = func.getE(Data)


plt.plot(Timelist, Elist, 'k-', lw = 1)
#plt.plot(Timelist, kin1, 'r-', lw = 1)
#plt.plot(Timelist, kin2, 'b-', lw = 1)
#plt.plot(Timelist, pot1, 'y-', lw = 1)
#plt.plot(Timelist, pot2, 'g-', lw = 1)

ymax = math.ceil( max([max(Elist),max(kin1),max(kin2),max(pot1),max(pot2)]) /10 ) * 10
ymin = min([min(Elist),min(kin1),min(kin2),min(pot1),min(pot2)])

plt.xlim(min(Timelist), max(Timelist))
plt.ylim(ymin, ymax)
plt.title(graphtitle)
示例#2
0
import numpy as np
import matplotlib.pyplot as plt
import math
from DoublePendulum import DP
import json
import pandas as pd
import copy
from pathlib import Path
from matplotlib.animation import FuncAnimation
import GraphFunc as func

Data = np.load(Path.cwd() / 'datafile.npy', allow_pickle=True)

time = func.getTime(Data)
xa = func.getx1(Data)
xb = func.getx2(Data)  #
ya = func.gety1(Data)  #
yb = func.gety2(Data)  #
timeInt = func.getInterval(Data)

fig = plt.figure()  #
ax = fig.add_subplot(111, autoscale_on=False, xlim=(-2, 2), ylim=(-2, 2))  #
ax.grid()
line, = ax.plot([], [], 'o-', lw=2, color='black', ms=8)
time_template = 'time = %.1fs'
time_text = ax.text(
    0.05,
    0.9,
    '',
    transform=ax.transAxes,
)