zoukankan      html  css  js  c++  java
  • MeteoInfoLab脚本示例:线性拟合

    MeteoInfoLab提供一个线性拟合函数linregress,参数是参与拟合的两个数据序列,返回拟合的斜率、截距和相关系数。有了上述拟合参数可以用polyval函数生成拟合数据(直线)。然后可以将数据、拟合线、公式等绘图。

    脚本程序:

    fn = os.path.join('D:/KeyData/PMMUL/data/54500_PMMUL_DA.csv')
    if os.path.exists(fn):
        print fn
        tdata = readtable(fn, delimiter=',', format='%{yyyyMMdd}D%f%f%f%i%i%i')        
        pm10 = tdata['PM10']
        pm25 = tdata['PM2.5']
        slope, intercept, r = linregress(pm10, pm25)
        x = arange(0, 800, 100)
        y = polyval([slope, intercept], x)
            
        scatter(pm10, pm25, s=2, color='k', label='PM')
        plot(x, y, 'r-', linewidth=2)
        xlim(0, 800)
        ylim(0, 800)
        xlabel(r'$
    m{PM_{10}}  (mu g  m^{-3})$')
        ylabel(r'$
    m{PM_{2.5}}  (mu g  m^{-3})$') 
        text(100, 600, r'$y = ' + '%.4f' % slope + 'x + ' + '%.4f' % intercept + '$', fontsize=16)  
        text(100, 520, r'$R^2 = '+ '%.4f' % (r * r) + '$', fontsize=16)
        text(700, 650, '(a)')
        show()
    
    print 'Finished...'
  • 相关阅读:
    @Autowired注解与@Qualifier注解搭配使用
    前端中具体实现
    js文件处理
    跨域解决方案
    WebSocket实现
    js触摸操作
    RPC框架gRPC
    RPC框架Thrift
    分布式RPC
    RPC基本原理
  • 原文地址:https://www.cnblogs.com/yaqiang/p/4587709.html
Copyright © 2011-2022 走看看