how to sort the vectors to positive n negative of same elements?

1 次查看(过去 30 天)
Hi All, say i have a vector v = [1,-2,3,4,5,6,7,8,9,77,44,88,99,-1,95,-6,-7,-8,-9] now i want to check element by element if there is a same element with opposite sign(1, -1) in the array and plot it as zero in their respective points in the x axis. Please note: i do not need to store the values in the variable and just need to plot it. How can i implement that?
thanks

采纳的回答

Stephen23
Stephen23 2017-3-7
编辑:Stephen23 2017-3-7
>> v = [1,-2,3,4,5,6,7,8,9,77,44,88,99,-1,95,-6,-7,-8,-9]
v =
1 -2 3 4 5 6 7 8 9 77 44 88 99 -1 95 -6 -7 -8 -9
>> out = v .* ~ismember(v,-v)
out =
0 -2 3 4 5 0 0 0 0 77 44 88 99 0 95 0 0 0 0
>> plot(out)
  3 个评论
Stephen23
Stephen23 2017-3-7
编辑:Stephen23 2017-3-7
Then do the opposite:
out = v .* ismember(v,-v)
If neither of these resolve your question then please explain exactly what you want together with example input and output data. Your original question states "..if there is a same element with opposite sign(1, -1) in the array and plot it as zero..", and that is exactly what my answer gives you: values which are both positive and negative in the vector are plotted as zero.

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 2-D and 3-D Plots 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by