예제 #1
0
 def test_out_of_bounds(self):
     london_lat, london_long = 51.5072, 0.1275
     with self.assertRaises(NameError):
         df = daymet_timeseries(lon=london_long,
                                lat=london_lat,
                                start_year=2012,
                                end_year=2012)
예제 #2
0
 def run(self):
     ts = daymetpy.daymet_timeseries(
         lat=self.lat, lon=self.lon, start_year=1980, end_year=2019
     )
     int_cols = ["year", "yday"]
     ts[int_cols] = ts[int_cols].astype(int)
     ts.write_csv(self.output().path, index_label="ts", float_format="%.1f")
예제 #3
0
    def test_ornl_df(self):
        ornl_lat, ornl_long = 35.9313167, -84.3104124
        df = daymet_timeseries(lon=ornl_long, lat=ornl_lat, start_year=2012, end_year=2012)

        self.assertTrue(df.year.count() == 365)
        self.assertTrue("tmax" in df.columns)
        self.assertTrue("tmin" in df.columns)
        self.assertTrue("prcp" in df.columns)
예제 #4
0
    def test_ornl_df(self):
        ornl_lat, ornl_long = 35.9313167, -84.3104124
        df = daymet_timeseries(lon=ornl_long,
                               lat=ornl_lat,
                               start_year=2012,
                               end_year=2012)

        self.assertTrue(df.year.count() == 365)
        self.assertTrue("tmax" in df.columns)
        self.assertTrue("tmin" in df.columns)
        self.assertTrue("prcp" in df.columns)
예제 #5
0
 def test_out_of_bounds(self):
     london_lat, london_long = 51.5072, 0.1275
     with self.assertRaises(NameError):
         df = daymet_timeseries(lon=london_long, lat=london_lat, start_year=2012, end_year=2012)
예제 #6
0
coord_arr = np.array(coords, dtype=np.dtype("float,float"))

# need to test if numpy masked arrays or xarray masking works better. using xarr for now
# np.ma.masked_where(L_dn==-9999, L_dn)

emis = emis.where(L_dn != -9999)
emis = emis * .0001

L_dn = L_dn.where(L_dn != -9999)
L_dn = L_dn * .001

Tr_K = Tr_K.where(Tr_K != -9999)
Tr_K = Tr_K * .1

aoi_met = daymetpy.daymet_timeseries(
    lon=center[0], lat=center[1], start_year=2002,
    end_year=2002)  # used to estimate mock params for aoi

import pvlib
import datetime
from timezonefinder import TimezoneFinder

time = pd.to_datetime(datetime.datetime(2002, 8, 3, 10, 4))
time = pd.DatetimeIndex([time])
tf = TimezoneFinder(in_memory=True)
timezone = tf.certain_timezone_at(lng=center[0], lat=center[1])
time = time.tz_localize(timezone)
solar_df = pvlib.solarposition.get_solarposition(
    time, center[1],
    center[0])  # can be made more accurate with temp and pressure from daymet
예제 #7
0
# Functions in Daymetpy allow for painless use of this service
# DaymetPy package developed by Koen Hufkens 
# https://bitbucket.org/khufkens/daymetpy

# In[1]:

import sys
sys.path.append(r"J:\Projects\NCCSC\phenocam\Tools\DaymetPy")

import daymetpy


# In[2]:

ornl_lat, ornl_long = 35.9313167, -84.3104124
df = daymetpy.daymet_timeseries(lon=ornl_long, lat=ornl_lat, start_year=2012, end_year=2013)


# ### Which gives us a nice data frame with weather data for the Oak Ridge National Lab

# In[3]:

df.head()


# ## Which we can visualize using matplotlib and seaborn

# In[4]:

import pandas as pd