In [1]:
%pylab inline
import px4tools
from px4tools import pandas

plt.rcParams['figure.figsize'] = (10, 5)
plt.rcParams['lines.linewidth'] = 3


Populating the interactive namespace from numpy and matplotlib
attempting to monkey patch pandas timedelta series plotting
monkey patch suceeded

In [2]:
d = px4tools.read_ulog('/home/jgoppert/git/px4/px4/build_posix_sitl_default/tmp/rootfs/fs/microsd/log/2017-01-28/00_06_53.ulg')

In [3]:
d_concat = d.concat(dt=0.1)
d_concat_computed = px4tools.compute_data(d_concat)
px4tools.estimator_analysis(d_concat_computed)


ESTIMATOR ANALYSIS
-----------------------------------

attitude error:
	roll  mean:   1.154507	std:	  0.443585	deg
	pitch mean:  -1.390293	std:	  0.087945	deg
	yaw   mean:  -0.845276	std:	  0.684262	deg

position error:
	x mean:   0.008288	std:	  0.006743	m
	y mean:   0.016046	std:	  0.002264	m
	z mean:   0.760076	std:	  0.057998	m

velocity error:
	x mean:   0.002948	std:	  0.005125	m/s
	y mean:   0.023267	std:	  0.013386	m/s
	z mean:  -0.142459	std:	  0.069610	m/s

Out[3]:
{'pitch_error_mean': -1.3902927829663951,
 'pitch_error_std': 0.087944974466147546,
 'roll_error_mean': 1.1545072636446725,
 'roll_error_std': 0.44358516824659805,
 'vx_error_mean': 0.002947640372440219,
 'vx_error_std': 0.00512491911649704,
 'vy_error_mean': 0.023266809061169624,
 'vy_error_std': 0.013386493548750877,
 'vz_error_mean': -0.142458975315094,
 'vz_error_std': 0.06961026787757874,
 'x_error_mean': 0.008287647739052773,
 'x_error_std': 0.006742564495652914,
 'y_error_mean': 0.016045719385147095,
 'y_error_std': 0.002264348091557622,
 'yaw_error_mean': -0.84527616084752732,
 'yaw_error_std': 0.68426214674094321,
 'z_error_mean': 0.7600759267807007,
 'z_error_std': 0.05799758806824684}

In [4]:
px4tools.ulog.plot_velocity(d_concat)