PCSE_NASA【wofost】 天气数据获取(5.5新版本)

本文介绍了如何在NASA接口更新后,利用PCSE_NASA 5.5新版本获取天气数据,包括新增的平均温度、经纬度、海拔等信息,并提到了总辐射量单位的变化。关键参数保持不变,提供了原文链接。
摘要由CSDN通过智能技术生成

PCSE_NASA 天气数据获取(5.5新版本)

之前有个河南农大的哥们写了一个,但是现在NASA接口更新了,然后我随便改了一下好像是能用了,就是作者里面又加了几条数据【平均温度、经纬度、海拔】总辐射量单位发生了变化,作者把单位从千焦变成了焦,不知道再5.5的版本里面是否有对应修改

# 获取数据的基础函数
import pandas as pd
import numpy as np
import requests
import datetime as dt
from math import exp
import json
import time


# 1.公式单位转换
MJ_to_J = lambda x: x * 1e6
mm_to_cm = lambda x: x / 10.
tdew_to_hpa = lambda x: ea_from_tdew(x) * 10.
to_date = lambda d: d.date()

# 2.接口调用设定经纬与时间
def getnasadata(latitude, longitude, start_date, end_date):
    server = "https://power.larc.nasa.gov/api/temporal/daily/point"
    # Variable names in POWER data
    power_variables = ["TOA_SW_DWN", "ALLSKY_SFC_SW_DWN", "T2M", "T2M_MIN",
                       "T2M_MAX", "T2MDEW", "WS2M", "PRECTOTCORR"]
    payload = {
   "request": "execute",
               "parameters": ",".join(power_variables),
               "latitude": latitude,
               "longitude": longitude,
               "start": start_date.strftime("%Y%m%d"),
               "end": end_date.strftime("%Y%m%d"),
               "community": "AG",
               "format": "JSON",
               "user": "anonymous"
               }

    req = requests.get(server, params=payload)
    return req.json()  # 或者 req.json()


# 3.处理并返回气象记录
def _process_POWER_records(powerdata):
    """Process the meteorological records returned by NASA POWER
    """

    fill_value = float(powerdata["header"]["fill_value"])
    power_variables = ["TOA_SW_DWN", "ALLSKY_SFC_SW_DWN", "T2M", "T2M_MIN",
                       "T2M_MAX", "T2MDEW", "WS2M", "PRECTOTCORR"]
    df_power = {
   }
    for varname in power_variables:
        s = pd.Series(powerdata["properties"]["parameter"][varname])
        s[s == fill_value] = np.NaN
        df_power[varname] = s
    df_power = pd.DataFrame(df_power)
    df_power["DAY"] = pd.to_datetime(df_power.index, format="%Y%m%d")

    # find all rows with one or 
  • 3
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值