convert plot(x,y) to plot(y(ind))

3 visualizzazioni (ultimi 30 giorni)
Muhannad
Muhannad il 24 Giu 2015
Commentato: Muhannad il 24 Giu 2015
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,

Risposte (2)

Azzi Abdelmalek
Azzi Abdelmalek il 24 Giu 2015
Modificato: Azzi Abdelmalek il 24 Giu 2015
Just do this
plot(y)
  6 Commenti
Azzi Abdelmalek
Azzi Abdelmalek il 24 Giu 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)
Muhannad
Muhannad il 24 Giu 2015
can you show the final results in plot(y(ind))? as I need the indices and not the plot.

Accedi per commentare.


Purushottama Rao
Purushottama Rao il 24 Giu 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 Commenti
Purushottama Rao
Purushottama Rao il 24 Giu 2015
Modificato: Purushottama Rao il 24 Giu 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.
Muhannad
Muhannad il 24 Giu 2015
so can you include another plot(y(ind)) which will give me the same shape as plot(x,y) but the x axis will be different and it will include the indices?

Accedi per commentare.

Categorie

Scopri di più su Programming in Help Center e File Exchange

Tag

Prodotti

Community Treasure Hunt

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

Start Hunting!

Translated by