如何在python中找到带有x轴的图的交点?

时间:2015-07-31 16:38:11

标签: python graph plot intersection

我想得到我用x轴绘制的曲线的交点。 我不知道曲线的等式。我只有离散值,我绘制它们。有没有办法用python轻松完成这项工作? 代码很简单:

    incident_angles = np.linspace(0,90,91)
    r_p = np.array(r_p_list) 
    #r_p_list contains fresnel coefficients for the incident angles
    py.plot(incident_angles,abs(r_p))

现在,当我绘制此图时,曲线与x轴在布鲁斯特角的点处相交。我想明白这一点。 该图形应该与此图像中的蓝色曲线相似: fresnel coefficients for reflected TM polarized light 感谢

1 个答案:

答案 0 :(得分:0)

好的,现在我知道怎么做了。 首先,我们可以使用“scipy.interpolate.PiecewisePolynomial”来创建由离散数据定义的函数,然后使用“fsolve”来查找根(x轴交点)

from scipy.optimize import fsolve
import scipy.interpolate as interpolate

x = incident_angles
y1 = r_p
func = interpolate.PiecewisePolynomial(x,y1[:,np.newaxis])
brewster = fsolve(func, 0.0)  #0.0 is the starting point (angle)
print brewster