Coder Social home page Coder Social logo

ncomms-codes's Introduction

Code run environment: Anaconda for Python 2.7. NumPy, SciPy, pandas, matplotlib, netCDF4 and GDAL packages should be installed.

#########################################################################

Part 1: Instruction to run the code to process GIMMS3g NDVI.

Step 1: Data format conversion. GIMMS_binary2geotiff.py: run this code to convert GIMMS3g V0 binary data to GeoTIFF format. The user needs to specify the input and output directory in the code.

Step 2: Estimate_phenology_from_GIMMS3g_V0_r000_1080.py: python code to estimate phenology from step1 converted GIMMS3g V0 GeoTIFF files specified row range. Estimate_phenology_from_GIMMS3g_V1_r000_1080.py: python code to estimate phenology from GIMMS3g V1 netcdf files for specified row range.

The user should specify the input/output path, the start row and end row number in the code. The output is in text format. The user can parallelly calculate at several regions by setting the start and end row number in the codes.

Step 3: Run GIMMS3g_phen_merge.py to merge the sub-regions phenology outputted from step2 to the whole northern hemisphere and saved as GeoTIFF. The user needs to specify the input/output path in the code file.

Step 4: Run GIMMS3g_phenology_result_spatial_extent_uniform.py code to make the spatial extent consistent during the period for each method. The user needs to specify the input/output path in the code file. The input is output from step 3.

Step 5: Run GIMMS3g_phen_sub_statistic.py to get northern hemisphere spatial average phenology from the output of step 4.

Step 6: Run average_RS_phenology_from_Multi_methods.py to get average phenology from different methods in each year. The user needs to specify the input/output path in the code file. The input is output from step 4.

Step 7: Run GIMMS_phenology_trend.py code to calculate the MK trend in the northern hemisphere. The user needs to specify the input/output path in the code file. The input is output from step 6.

#########################################################################

Part 2: Instruction to run the code to process FLUXNET2015 dataset.

Step 1: Run estimate_phenology_date_from_daily_GPP.py to estimate SOS and EOS at each site.

Step 2: Run get_seasonal_meteo_&_carbon_flux20171027.py to get seasonal meteorological data, carbon flux data and quality flag.

Step 3: Run Cal_Trends_R2_phen_vs_envir_and_var_trend_for_seasons.py to calculate phenology trends, meteorological variables trends, carbon fluxes trends, correlation between phenology and meteorological variables (or carbon fluxes).

#########################################################################

Part 3: Codes to process the CRUTEM data Temperature_CRUTEM3_Seasonal.py: This code is used to calculate the seasonal average temperature from CRUTEM3 (5 degree resolution) in the northern hemisphere (lat > 30degree). User need to specify the input/output directory in the codes.

Temperature_CRUTEM4_Seasonal.py: This code is used to calculate the seasonal average temperature from CRUTEM4 (5-degree resolution) in the northern hemisphere (lat > 30degree). The user needs to specify the input/output directory in the codes.

Temperature_Berkely_Earth_seasonal_data.py: This code is used to calculate the seasonal average temperature from Berkely Earth temperature dataset in the northern hemisphere (lat > 30degree).

Temperature_GISTEMP_seasonal_data.py: This code is used to calculate the seasonal average temperature from NASA GIS temperature dataset in the northern hemisphere (lat > 30degree).

Temperature_NOAA_seasonal_data.py: This code is used to calculate the seasonal average temperature from NOAA GIS temperature dataset in the northern hemisphere (lat > 30degree).

Temperature_CRUTEM4_seasonal_spatial_05deg_grid.py: This code is used to convert the high resolution (0.5 degree) CRUTEM4 NetCDF files to seasonal GeoTIFF files. The user needs to specify the input/output directory in the codes.

Temperature_CRUTEM4_05deg_grid_trend_spatial_pattern.py: This code is used to calculate the spring (or autumn) temperature trend for each grid. The user needs to specify the input/output directory in the codes.

#########################################################################

Part 4: Results plotting codes, here we provide the codes for figures in maunuscript.

Fig1_GIMMS_SOS_EOS_trend_version2.py: Codes used to plot Figure 1 in the manuscript.

Fig2_FLX_phen_spaghetti.py: Codes used to plot Figure 2 in the manuscript.

Fig3_envir_control_SOS_EOS_boxplot.py: Codes used to plot Figure 3 in the manuscript.

Fig4_Temp_spr_aut.py: Codes used to plot Figure 4 in the manuscript.

Fig5_carbon_flux_trend_result_from_phenology_trend.py: Codes used to plot Figure 5 in the manuscript.

Supplementary_Fig_2_Plot_phen_avg_std_20190401_latitude_sort.py: Codes used to plot Supplementary Figure 2 in the Supplementary Information.

Supplementary_Fig_3_Plot_trends_as_bar_plot_NT_latitude_sort_unsignificant.py: Codes used to plot Supplementary Figure 3 in the Supplementary Information.

Supplementary_Fig_5&6_Plot_R2_for_phen_&meteo_season_latitude_sorted_no_display_nosig.py: Codes used to plot Supplementary Figure 5 and 6 in the Supplementary Information.

Supplementary_Fig_7_plot_partial_correlation_boxplot.py: Codes used to plot Supplementary Figure 7 in the Supplementary Information.

Supplementary_Fig_10&11_Plot_R2_for_phen_&carbon_flux_latitude_sorted_display_sig.py: Codes used to plot Supplementary Figure 10 and 11in the Supplementary Information.

Supplementary_Fig_14_FLX_sites_GIMMS_SOS_EOS_trend.py: Codes used to plot Supplementary Figure 14 in the Supplementary Information.

Supplementary_Fig_16_plot_correlation_of_2groups.py: Codes used to plot Supplementary Figure 16 in the Supplementary Information.

Supplementary_Fig_19_Get_GPP_threshold_for_phen_extract.py: Codes used to plot Supplementary Figure 19 in the Supplementary Information.

#########################################################################

Part5: other codes: phenology_estimate.py: this file include functions for different NDVI based phenology methods, and they are called in Cal_phenology_from_NDVI.py;

savitzky_golay.py: Savitsky-Golay model to smooth NDVI data to eliminate the noises in NDVI data.

Geotiff_read_write.py: functions to read and write GeoTIFF format in Python.

GPP_smooth_func.py: functions to smooth daily GPP, and these functions are called in estimate_phenology_date_from_daily_GPP.py.

MK_trend.pyc: function to perform Mann-Kendall trend analysis. (source code for this fucntion can be accessed at https://github.com/mps9506/Mann-Kendall-Trend)

perform_start_end_date_sensitivity.py: code to perform result sensitivity to start and end date of warming hiatus.

#########################################################################

Any problems in installation of the codes, please contact Xufeng Wang([email protected]).

ncomms-codes's People

Contributors

xufengwangofcas avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.