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 2-D and 3-D Plots 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!