Variable change over time
    14 visualizzazioni (ultimi 30 giorni)
  
       Mostra commenti meno recenti
    
Hello friends!
I have three 2d points (the xx values represents time instants between [0;1] and yy represents rotation values): initial = [0 , 0]; middle = [0.5 , 1.5409]; final = [1 , 3.0817];
I'm looking to do an interpolation of the remaining points for each 0.1 in the xx axis. The easiest way is to do a linear interpolation using linspace, but in this case i dont want to use evenly spaced values. What i want to do have is to have lower yy values on the first 4 intervals ([0 ; 0.4]) and higher yy values on the last 4 ([0.6 ; 1]), like the one i represented on the image below with orange color (blue represents the linear interpolation). Any ideas? Thanks for helping! :)

0 Commenti
Risposta accettata
Più risposte (1)
  Robert Dylans
      
 il 8 Ott 2015
        
      Modificato: Robert Dylans
      
 il 8 Ott 2015
  
      If there's no particular requirement for the function's data, other than it "looks like" that kind of shape, you can use a formula similar to this:
x=0:0.01:1;
y=3.0817*(1-(1-((2*x).^3)./8).^5);
plot(x,y)
This was just a formula I happened to be using for something else, that has a similar curve fit. I'm sure there are many with similar functions. Note that this one only works for values of x in the range of [0 1]
Vedere anche
Categorie
				Scopri di più su Get Started with Curve Fitting Toolbox in Help Center e File Exchange
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!


