Git Product home page Git Product logo

ceap-grazing-lands's People

Contributors

jneme910 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

ceap-grazing-lands's Issues

Soil Characteristics GUI / Mapping Tool

Soil Characteristics GUI / Mapping Tool

• Primarily interested in using the tool to group soils into ecological sites and ecological site groups within a Major Land Resource Area or Land Resource Unit.
o Choose soil characteristics that I want grouped
 Those characteristics are captured on the spreadsheet and in Jason’s SQL.
o Identify map unit components that have those soil characteristics
 Already captured in Jason’s SQL via MUKEY.
o View the dominant component, dominant condition map units. Be able to set minimum percent of dominant component or condition (ie map units with 100%, at least 70% etc)
 Can this be a user-entry box in the GUI, allowing user to enter a positive integer between 1-100?
o Be able to turn on/view (separately) additional map units with minor component having those characteristics. Be able to set minimum percent of minor component (ie >0% of map unit, or at least 25% of map unit)
 Similar to above it re: dominant component/dominant condition?... Just let the user enter the value they want? The value might ideally be captured as something like, “Percent of component acres in the mapunit is greater than ___ and less than ___.” User would enter values in each blank; limited to a value between 1-100.
o View the data as aggregated by the Normalized Major Component display.
 All calculations within the “analytical” GUI would be performed on this normalized major component data. Calculations should not be performed on any of the other scripts (those run to extract Dominant Component or All Components).
o View the map result online (visual check review)
o Download the result as a geodatabase or shapefile (I like the shapefile idea because it is easier for me to add to the maps that I have created for the work I am doing)
• Ideally, I would be able to create multiple ecological site or ecological site groups at once -ie set up “ecosite units” each with their own soil characteristics, to create the ecological site or site group map for the MLRA or LRU, or even a ranch.
• The dream is to incorporate the scripts+GUIs into web soil survey so everyone can use them. Web soil survey is hooked to EDIT, so the user could potentially get some state and transition information, production ranges, species lists for the ecosite units built.
• Simplify some of the outputs:
o Within both GUIs (the “non-analytical” and the “analytical”), group the Landforms from SSURGO into CEAP-GL categories: Bottom, Terrace, Depression, Upland.
o What else can we have the GUI group into categories, for ease of data interpretation and/or mapping concepts?
• Perform the following selections/calculations in the “analytical” GUI, using only the script that contains the Normalized Component Percents:
o What are the most important drivers of a vegetation and/or ecological site change or concept?
 Least limiting soil properties:
 Most limiting soil properties: Profile Depth, Restriction Depth, Chemistry, Slope, Coarse Frag Volume in Profile, AWS, …..
 Are weighted averages helpful, or do we just need min/max values?
• Some properties aren’t calculatable. For those, have users select the criteria for each property. Eg, if Profile Depth is a concern, I could select all the “Very Shallow” components.
• Some properties can be calculated. For those, a weighted average may be helpful, or the Min or Max might be preferred. Eg, If SAR is the concern, I’d select SAR when weighted avg for the profile is greater than {user entry}. Or could select it based on Min value = {user entry}. Or on Max value = {user entry}.
• Due to processing speed, it might be good to have those weighted averages, mins and maxs pre-calculated for each mapunit component, and when a calculated value is desired, the GUI calls on that pre-calculated table, rather than performing the calc in realtime?
• Add Rainfall Erosivity Values (from the Global Rainfall Erosivity ArcGIS datalayer available thru data request at https://esdac.jrc.ec.europa.eu/content/global-rainfall-erosivity) to the map layer, so we can spatially join the R-Factor to each mapunit. The R-factors in NASIS are unreliable, so prefer to use the R-Factors developed in the Global Rainfall Erosivity data layer.
o R-Factor joined/related to Jason’s tabular SQL output in ArcGIS, and then just displayed as a selection within the GUI. Mike, this would be an extra step for your team to perform. Is this okay?

Could two different GUIs be developed?

Request: Could two different GUIs be developed? The first would be “non-analytical” where no calculations would be performed on any of the data.

The second GUI would be for “analytical” users, and the data calculations presented in this document would be performed as described. This analytical GUI would be for users who need to evaluate large landscapes, perform environmental modeling, or perhaps develop ecological site group concepts.

Calcs would only be performed on the Major Components, using Jason’s new datafield, that identifies and calculates the normalized component percents

January Missing

Jason it looks like January is missing from your water table script.
Was this intentional?

---TRUNCATE TABLE #water2

  | INSERT INTO #water2 (mukey, compname ,  avg_h20_apr2sept , avg_h20_oct2march ,cokey)
  | SELECT DISTINCT mukey, compname,   (SELECT AVG (min_water) FROM #water AS w2 WHERE w2.cokey=#water.cokey AND CASE WHEN month  = 'April' THEN 1
  | WHEN month  = 'May'THEN 1
  | WHEN month  = 'June' THEN 1
  | WHEN month  = 'July' THEN 1
  | WHEN month  = 'August' THEN 1
  | WHEN month  = 'September' THEN 1 ElSE 2 END = 1) AS avg_h20_apr2sept,
  | (SELECT AVG (min_water) FROM #water AS w3 WHERE w3.cokey=#water.cokey AND CASE WHEN month  = 'October' THEN 1
  | WHEN month  = 'November' THEN 1
  | WHEN month  = 'December' THEN 1
  | WHEN month  = 'February' THEN 1
  | WHEN month  = 'March' THEN 1
  | ElSE 2 END = 1) AS avg_h20_oct2march, cokey
  | FROM #water

Kevin Godsey

Extracting Data

if data is being extracted for a point, then pull the data to the map unit extent right? Not the survey extent of the soil concept, correct? I told him that you were hoping for component level, so that extent of the data would be map unit at coarsest. So there are two options here: A) extracting data for a point (eg, NRI), or; B) extracting data by mapunit component. My hope was to have it by (B), mapunit component. Not by point. As we overlay specific points onto the completed spatial product, we could be intersecting with a mapunit component, and that would yield all the soil characteristic data that he’s extracting for us. So essentially, we end up with both if we do it at the mapunit component scale.

How would Stone Environmental use the data, from Soil Data Access?

We typically use it directly from the gSSURGO download, and they would write scripts extracting data from that. But Jason makes a good point, that if it’s done through Soil Data Access, it would always be a solid link on the web, available to anyone to use. So I think that would be the best approach.

Diagnostic Flags Horizon Name

I think you will at least need a percent sign after the d.
The suffix d is not always last as indicated in list of horizon names in NASIS.
However this query will also pick out the word “and” in the Hzname field.

  | --WHEN hzname LIKE '%R%' THEN 'lithic'
  | --WHEN hzname LIKE '%d' THEN 'densic'
  | --WHEN hzname LIKE '%qm%' THEN 'duripan'
  | --WHEN hzname LIKE '%km%' THEN 'petrocalcic'
  | --WHEN hzname LIKE '%ym%' THEN 'petrogypsic'
  | --WHEN hzname LIKE '%x%' THEN 'fragipan' -- may not meet fragipan
  | --WHEN hzname LIKE '%hs%' THEN 'spodic'
  | --WHEN hzname LIKE '%m%' THEN 'petro' END AS hz_diag_kind

Kevin Godsey

New Additions

<style> </style>
Link to Data Def ID Soil Characteristic/Criteria by Component gSSURGO table name gSSURGO physical name gSSURGO column label (appears in ArcGIS attribute tables) Extra Criteria if Noted Below Notes gSSURGO physical name Logical Data Type Physical Data Type
** Jason: You have a separate SQL that you named "MLRA+SMTR_SQL". If you could just add that to the main CEAP-GL SSURGO-QT SQL, alongwith all the items above? Thanks!                
New data that needs to be added to SQL, based on Reviewer Comments (9-1-2021)                  
109 pH 1:1 H2O, low chorizon; uppermost ph1to1h2o_l   15cm depth, or surface horizon, whichever is "best" or "comes first".        
110 pH 1:1 H2O, high chorizon; uppermost ph1to1h2o_h   15cm depth, or surface horizon, whichever is "best" or "comes first".        
111 pH 0.01M CaCl2, low chorizon; uppermost ph01mcacl2_l   15cm depth, or surface horizon, whichever is "best" or "comes first".        
112 pH 0.01M CaCl2, high chorizon; uppermost ph01mcacl2_h   15cm depth, or surface horizon, whichever is "best" or "comes first".        
113 CEC-7, low chorizon; uppermost cec7_l   15cm depth, or surface horizon, whichever is "best" or "comes first".        
114 CEC-7, high chorizon; uppermost cec7_h   15cm depth, or surface horizon, whichever is "best" or "comes first".        
115 add verti to Subgroup data pull in the SQL component taxsubgrp Subgroup          
116 add Vertisol to Greatgroup data pull in the SQL component taxgrtgroup Greatgroup          
117 avg_h20_mar2oct       (comonth; water table depth representative value)        
118 avg_h20_nov2feb       (comonth; water table depth representative value)        
119 Flood_Freq       Five flooding frequency classes are needed in SQT:  1. None and Very Rare will be combined. 2. Rare 3. Occasional 4. Frequent 5. Very Frequent        
120 Flood_Dur       Four flooding duration classes are needed in SQT:              1. Extremely Brief and Very Brief (0.1 hrs to <2 days) will be combined.                                                         2. Brief (2 days to <7 days)                                                               3. Long (7 days to <30 days)                                                             4. Very Long (>=30 days)        
121 Flood_Month       Only need June, July, August as selections in SQT.        
122 Ponding_Freq       Ponding Frequency classes for SQT:                                                                                    1. None                                                                                         2. Rare                                                                                             3. Occasional                                                                             4. Frequent        
123 Ponding_Dur       Ponding Duration classes for SQT:                                     1. Very Brief                                                                                        2. Brief                                                                                          3. Long                                                                                                     4. Very Long        
124 Ponding_Month       Only need June, July, August as selections in SQT.        

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.