plot vector where negative data is circled

1 view (last 30 days)
If I e.g. have the following two vectors:
data = [1 2 3 -4 -5 6 -7 8 9 -10]
pos = [1 2 3 4 5 6 7 8 9 10]
How can I do
plot(abs(data),pos)
set(gca,'xscale','log');
where only the negative data is circled? Is that even possible without stepping through each data point?

Accepted Answer

Rick Rosson
Rick Rosson on 13 Mar 2015
Edited: Rick Rosson on 13 Mar 2015
isNeg = (data < 0);
plot(abs(data),pos)
hold on
plot(abs(data(isNeg)),pos(isNeg),'o')
set(gca,'xscale','log');

More Answers (1)

Toke Søltoft
Toke Søltoft on 13 Mar 2015
thanks so much. Works like a charm.

Tags

Products

Community Treasure Hunt

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

Start Hunting!

Translated by