Share

How do I find and map a limiting property in ArcView 3.2?

First you need to have your data ready to use in ArcView.

Finding and mapping a limiting property is hard to explain because of the many possibilities. The property can be a component property or a horizon property, it can be quantitative or qualitative, if the data is quantitative, the limit can be 'lower-than' or 'higher-than', etc. Given this complexity, I will present two examples (a qualititative component-level example and a quantitative horizon-level example) and you should be able to figure out what to do with other situations.

First we'll deal with properties that are stored at a component level. What you need to do first is a summarization so that you have a singular value for each mapunit, since we can map those but not components. In some cases (especially when dealing with qualitative data) the best way to proceed is to designate each possible data value as either suitable or non-suitable and assign these values to the components. For example, we might be concerned with drainage and need to be assured that the site we choose has good drainage. In the Drainage field of the comp table, we could then specify values of W (Well Drained) or MW (Moderately Well Drained) as suitable and other values as unsuitable. So what we want is a new field with Suitable/Unsuitable values in it based on the Drainage field.

With the comp table open, choose Start Editing in the Table menu. Then Add Field in the Edit menu (in this example, we'll be creating values of 1 for Suitable and 0 for Unsuitable, so the field must be of the Number type); I called my new field Drain_OK. Next we need to select the components that meet our criteria. Click on the Query button. This opens a window that looks somewhat like the Calculator window and allows us to select records based on various criteria.

Query

As you can see, we constructed a query by specifying the field that we wanted to check and the values that were acceptable. In this case our query was simply (Drainage = "MW") or (Drainage = "W"). Then we click "New Set" and in the comp table window we see that many records are selected. Now close the Query window. While these records are selected, click on the new column you created (Drain_OK for me) and then click the Calculator button Calculator Button . In the calculator window, type a 1 to set the Drain_OK value to 1 for all the selected records.

Field Calculator 3

Next you need to choose Switch Selection in the Edit menu and then use the Calculator to set the value of Drain_OK to 0. Now we will summarize the data. To summarize the data, first select the Musym field. This field identifies the mapunits. Since the table contains component-level data, there are many cases where there are two or more data records (each indicating a component) for the same mapunit. Summarizing allows us to calculate one value for each mapunit, thus combining the values of the different components. With the Musym field selected, click on the Summarize button Summarize Button. This will bring up the following window:

Summary Table Definition 3

In this window we set the filename for the new table and we designate the fields we want to create in the new table. In this example, we are going to summarize the Drain_OK field - meaning that we will be taking the Drain_OK values for the various components in each mapunit and reducing them to one value. Since the Drain_OK field contains Suitable/Unsuitable values and since we don't know where any of the components are in the mapunit, then when summarizing, we must set the mapunit value to Unsuitable if ANY of the component values are Unsuitable. So we summarize by Min. When we click 'OK' in the window, a new table is formed.

Sum Table 2

The new table has three fields: Musym, Count, and Min_Drain_OK. Musym is the mapunit identifier - remember that Musym was the basis for our summarization. Count is the number of records that had each mapunit symbol. This field will be filled with many 1's, 2's and some 3's. Min_Drain_OK is the new field that we created. However, we still cannot map Min_Drain_OK. First, we must join the table to the table for a View.

In our new table, highlight the Musym field. Now, open a View containing one of the soil maps. Then click on the Open Theme Table button Open Table Button . In this table select the Musym field. With the theme table active, click on the Join button Join Button . This adds the other two fields from our summarization table to the theme table. Now we can use the Min_Drain_OK field for mapping. You can see the results below:

Drain OK Map

For the second example we are interested in the permeability of the soil. This is measured in inches per hour and is a property of every horizon. For each component we use the minimum permeability within the column of soil for the entire column and we'll do the same for the mapunit. However, rather than assigning Suitable/Unsuitable values, we are going to keep the minimum rate so that decisions can be made later about the limit of suitable permeability rates.

First we need to construct a field that we can summarize on. For the layer table, there are two fields that together serve to uniquely identify each component (which will have several layers): Muid and Seqnum. However, as you can see in the picture to the right, neither one alone uniquely identifies the component (the Muid field identifies the mapunit and the Seqnum identifies the component within the mapunit). So we need to create a field that does uniquely identify the component. To do so, first choose Start Editing in the Table menu. Then Add Field in the Edit menu (I called my new field Unique) and make sure that it is a String field. With the new field (Unique for me) highlighted, click on the calculator button Calculator Button.

Arcview Horizon Data

Field Calculator 4

This is a somewhat complex calculation and certainly requires some explanation. The Muid field is a String and the Seqnum field is not so we need to use the .AsString operator to make it into one. Then, once you have two strings, the + operator concatenates them. Now we can summarize. With the Unique field selected, click on the Summarize button Summarize Button. This will bring up the following window:

Summary Table Definition 4

In this window we set the filename for the new table and we designate the fields we want to create in the new table. In this example, we are going to summarize the Perml field - meaning that we will be taking the Perml values for the various horizons in each component and reducing them to one value. Since we want the least permeable layer to represent the entire column, we use the Minimum value within the component. We are also going to keep the Muid so that we can easily link to the mapunit table for mapping purposes. We summarize by First although Last would work just as well since the Muid is the same for every horizon in each component. When we click 'OK' in the window, a new table is formed.

Sum Table 3

The new table has four fields: Unique, Count, First_Muid, and Min_Perml. Unique is the component identifier - remember that Unique was the basis for our summarization. Count is the number of records that had each mapunit symbol. This field will be filled with many 1's, 2's and some 3's. Min_Perml is the new field that we created. But we can't map this because it is still at the component level. So we need to summarize it again from the component level to the mapunit level. Basically we will perform the same operation as before except that we will use the First_Muid field as the basis for summarization. See if you can figure out how to make the following table:

Sum Table 4

If you didn't figure it out, highlight the First_Muid field, click on the Summarize button and summarize the Min_Perml field by Minimum to create a Min_Min_Perml field.

Note that for this example we could have done all the summarizing in one step since we are using the Minimum function to summarize both times. However, this will not always be true. Also, I feel that it is conceptually easier to deal with summarizing at two different levels ... it makes summarizing from the horizon level seem like a mere extension of summarizing from the component level, as it is.

However, we still cannot map Min_Min_Perml. First, we must join the table to the table for a View. However, our new table doesn't have any columns in common with the View table. So we have to make one. Luckily the First_Muid field contains the Musym field. We will use the Calculator again to populate a new field with a string:

Arcview Calculator

The Middle function takes part of a string starting after the indicated character and with an indicated length. For us, the starting place is after the 3rd character of First_Muid and lasting until the end of the string, which is never more than 4 more characters. The result is a new field that contains exactly the same values as the Musym field. Highlight this new field in the new table. Now, open a View containing one of the soil maps. Then click on the Open Theme Table button Open Theme Table Button. In this table select the Musym field. With the theme table active, click on the Join button Join Button. This adds the other fields from our summarization table to the theme table. Now we can use the Min_Min_Perml field for mapping. You can see the results below:

Arcview Permeability Map

Obviously there are many other slightly different limiting properties that you might need and other techniques for extracting and mapping them. Hopefully these two examples will give you the tools you need to handle any of those other cases.