What does this error mean?
    7 vues (au cours des 30 derniers jours)
  
       Afficher commentaires plus anciens
    
I keep getting the error: Subscript indices must either be real positive integers or logicals.
days=10;
dy=-1;
hPlot1 = plot(dy,alt);
while dy<=days
%--calculate & display current time (UTC)
    yr=2018;
    mnth=1;
    dy=dy+1;
    hr=0;
    min=0;
    sc=0;
    d=datetime(yr,mnth,dy,hr,min,sc);
    %d=datetime('now');
%--covert and display current time in julian days
    JD_TT=juliandate(d);
%--convert julian days to moon position
    CooType='q2000';
    [X,Y,Z]=moonpos(JD_TT,CooType);
    %plot3(X,Y,Z);
%--convert to LLA coordinates, in degrees
    alt=sqrt(X.^2+Y.^2+Z.^2);
      xdata = get(hPlot1,'XData');
      ydata = get(hPlot1,'YData');
      set(hPlot1,'XData',[xdata dy],'YData',[ydata alt]);
end
altmax=max(ydata);
xmax=find(alt==altmax);
altmin=min(ydata);
xmin=find(alt==altmin);
15 commentaires
  Walter Roberson
      
      
 le 24 Juil 2018
				Your xdata and ydata is going to include that initial nan value.
At the end of your loop, your xdata and ydata are not going to include the last dy and alt, because you change hPolt1's XData and YData after you assign to the temporary variable xdata and ydata.
Réponses (1)
  Krithika A
      
 le 24 Juil 2018
        You use min in your code. min is already a matlab function
5 commentaires
  Krithika A
      
 le 24 Juil 2018
				Not specifically for min/max. Min/max can handle non-integers. It would be another function.
Voir également
Catégories
				En savoir plus sur Creating, Deleting, and Querying Graphics Objects dans Help Center et File Exchange
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!



