compass plot offsetting the origin

4 views (last 30 days)
Axel Grzy
Axel Grzy on 5 Mar 2012
Commented: Filipe Ribeiro on 12 Oct 2016
I would like to know if there is a way of offsetting the center of a compass plot, so that the vectors don't emanate from the center but rather from another pre-defined position. As I have two sets of data to be displayed on the same plot and sometimes these overlap, leaving one of the vectors completely covered.

Answers (1)

Andrew Newell
Andrew Newell on 5 Mar 2012
You could make a couple of subplots:
subplot 211
compass(...)
subplot 212
compass(...)
EDIT: However, if you really want them on the same plot, here is an example of how to do it:
% Generate data sets for example
Z1 = eig(randn(20,20));
h1 = compass(Z1);
hold on
Z2 = eig(randn(20,20));
h2 = compass(Z2);
% Offset the second set of data in the x direction
offset = 1;
for ii=1:20
set(h2(ii),'Color','r') % Change color so you can tell the data sets apart
x = get(h2(ii),'XData');
set(h2(ii),'XData',x+offset)
end
  1 Comment
Filipe Ribeiro
Filipe Ribeiro on 12 Oct 2016
Thanks. You know how can offset in y direction as well?

Sign in to comment.

Categories

Find more on Line Plots in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!