2010-02-11 16 views

cevap

19

Eğer matplotlib'iniz varsa, o zaman bir bağımlılık olduğu için numpy yüklü olmalıdır. Bu nedenle, eğimi bulmak için numpy.polyfit'u kullanabilirsiniz:

import matplotlib.pyplot as plt 
import numpy as np 

length = np.random.random(10) 
length.sort() 
time = np.random.random(10) 
time.sort() 
slope, intercept = np.polyfit(np.log(length), np.log(time), 1) 
print(slope) 
plt.loglog(length, time, '--') 
plt.show() 
+0

Grafik bir çizgi ise, bu doğru olurdu. Bir eğri olması ve eğimin farklı noktalarda değişmesi durumunda, bir diffrential gereklidir. Diff işlevini deneyin. – whatnick

+0

Fonksiyon hakkında daha fazla bilgi verebilir misiniz? – Bruce

+3

@Peter: 'polyfit' (en basit enkarnasyonunda) 3 args alır:' x'-data, 'y'-data ve polinom derecesi. Doğrusal bir uyum arayışında olduğunuzdan, 3. arg 1'e ayarlanır. "Polyfit" daha sonra en uygun polinomun katsayılarını döndürür, bu durumda eğim ve y-kesişme anlamına gelir. HTH. – unutbu

İlgili konular