convert plot(x,y) to plot(y(ind))
1 view (last 30 days)
Show older comments
Hi,
I am trying to convert plot(x,y) to plot(y(ind)) So i am interesting in getting the indices of x which gives me y?
Thanks,
0 Comments
Answers (2)
Azzi Abdelmalek
on 24 Jun 2015
Edited: Azzi Abdelmalek
on 24 Jun 2015
Just do this
plot(y)
6 Comments
Azzi Abdelmalek
on 24 Jun 2015
x = cumsum(hann(100));
y = linspace(-1,1,100);
plot(x,y);
idx=1:10:100
set(gca,'xtick',x(idx))
nxt=arrayfun(@num2str,idx,'un',0)
set(gca,'xticklabel',nxt)
Purushottama Rao
on 24 Jun 2015
g=interp1(y,x,0.5)
g gives you the x value corresponding to the given y value (0.5).
Use a for loop to find out the entire range.
Hope this is what you are looking for
3 Comments
Purushottama Rao
on 24 Jun 2015
Edited: Purushottama Rao
on 24 Jun 2015
x = cumsum(hann(100));
y = linspace(-1,1,100);
plot(x,y);
for k=1:length(y)
g(k)=interp1(y,x,y(k));
end
The speed looks to be ok. Ofcourse i do not know whether you are using the same x and y or not.
See Also
Categories
Find more on Logical in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!