import numpy as np
import matplotlib.pyplot as plt
import math
x = np.linspace(0,2,5)
y1 = np.power(np.sin(x-2),2)
y2 = y1*np.power(math.e,-(x ** 2))
#plt.plot(x,y1,'r-',label = 'y = $x^2$')
#plt.plot(x,y2,'b-')
plt.plot(x,y2,'b-',label = 'y = $f(x) = sin^2(x-2)e^-(x^2)$')
plt.xlabel('X:')
plt.ylabel ('f(x):')
plt.legend()
plt.title('grap of function f(x)')
plt.show()
结果:
分析:
import numpy as np
import matplotlib.pyplot as plt
import scipy.optimize
X = np.random.rand(20,10)
b = np.random.rand(10,1)
z = np.random.normal(loc = 0, scale = 1, size = (20,1) )
y = np.dot(X,b) + z
#S(b) = ||Xb-y||2 -->_b = arg min(S(b))
#XT * X * _b = XT * y
#_b = (XT * X)-1 * XT * y
a = np.dot(X.T,X)
a = np.linalg.inv(a)
a = np.dot(a,X.T)
#c = np.dot(X.T,y)
_b = np.dot(a,y)
plt.title('Parameter plot')
plt.xlabel('index')
plt.ylabel('value')
x = np.arange(0,10)
p1 = plt.scatter(x, b, c='r', marker='x')
p2 = plt.scatter(x, _b, c='b', marker='o')
plt.legend([p1,p2],['True b','Estimated b'],loc = 'upper right')
plt.show ()
结果:
分析:
#-*- coding: gbk -*-
import matplotlib.pyplot as plt
import numpy as np
import scipy.stats
z = np.random.normal(0, 0.123, 10000)
plt.hist(z , bins=25, density = True, color='b') #绘画柱形图
kernel = scipy.stats.gaussian_kde(z) #高斯密度分布
x = np.linspace(-0.75, 0.75, 10000)
plt.plot(x, kernel(x), 'k' )
plt.show()
结果: