From d1ff62d64065c96a850b68b68e0d2c659d953247 Mon Sep 17 00:00:00 2001 From: Alex Cunningham Date: Tue, 29 Oct 2013 14:34:41 +0000 Subject: [PATCH] Optional std deviation scaling (developed with Frank) --- matlab/+gtsam/covarianceEllipse.m | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/matlab/+gtsam/covarianceEllipse.m b/matlab/+gtsam/covarianceEllipse.m index 7728fc866..387d7cd12 100644 --- a/matlab/+gtsam/covarianceEllipse.m +++ b/matlab/+gtsam/covarianceEllipse.m @@ -1,16 +1,17 @@ -function covarianceEllipse(x,P,color) +function covarianceEllipse(x,P,color, k) % covarianceEllipse plots a Gaussian as an uncertainty ellipse % Based on Maybeck Vol 1, page 366 % k=2.296 corresponds to 1 std, 68.26% of all probability % k=11.82 corresponds to 3 std, 99.74% of all probability % -% covarianceEllipse(x,P,color) +% covarianceEllipse(x,P,color,k) % it is assumed x and y are the first two components of state x +% k is scaling for std deviations, defaults to 1 std [e,s] = eig(P(1:2,1:2)); s1 = s(1,1); s2 = s(2,2); -k = 2.296; +if nargin<4, k = 2.296; end; [ex,ey] = ellipse( sqrt(s1*k)*e(:,1), sqrt(s2*k)*e(:,2), x(1:2) ); line(ex,ey,'color',color);