The Function Editor is a visual programming language for building imagery and raster analysis workflows. An analysis workflow can be saved as a raster function template (RFT) that can be used to automate processes or for rendering. You create and modify RFTs in the Function Editor pane. The Function Editor represents a function chain as a diagram that chains together function sequences using the output of one or more functions as the input to another function.
You can use various techniques to model a process that results in an RFT. For example, you can open the Function Editor pane and insert a raster variable and any functions. In this mode, no input data is connected to the chain so certain capabilities, such as previewing the result of a section of the processing chain, are disabled. Once data is connected to the processing chain, you can preview the results. You can save the raster function chain (now the RFT) and share and run it with different input datasets.
You can apply a raster function on a raster layer in the map using the Raster Functions pane, which creates a temporary raster layer in the map. You can also apply additional raster functions on the output layer. When you are finished applying functions, right-click the final output and click Save Function Chain or Edit Function Chain. The layer with the final function applied to it contains all of the previous functions with their parameter settings. Saving a layer's function chain removes the original input data and inserts raster variables that can be made public so the template can be used again with different data.
The function or raster function chain must have a final and single output to be valid.
You can do the following using the Function Editor pane:
- Visualize a workflow sequence as a diagram.
- Build an RFT by adding raster functions, raster variables, scalars, raster layers, datasets, and other data types to the diagram and connecting them to perform an analysis. The analysis can be performed on the current display extent or in a distributed manner using raster analysis on Portal for ArcGIS.
- Iteratively check parameters on a function raster layer's function chain. To interact with the display and the settings in the function chain, right-click the function raster layer in the Contents pane and click Edit Function Chain. When you make changes to parameters, click the Apply button on the Function Editor toolbar to refresh the layer to reflect the changes.
- Save a function raster layer's function chain as an RFT.
- Make an RFT usable to others by renaming functions, raster variables, and function variables.
Tools in the Function Editor
The Function Editor provides a set of tools available on the toolbar at the top of the Function Editor window.
Tools in the Function Editor
Move around the diagram.
|Fixed Zoom In
Zoom in by a fixed factor.
|Fixed Zoom Out
Zoom out by a fixed factor.
Automatically arrange the elements in the diagram.
|Fit to Window
Fit the entire diagram within the visible view of the window.
|Insert Python Raster Function
Insert a Python raster function by importing a script file (.py).
Add an input raster dataset to the diagram.
Add an input constant value representing a constant raster.
|Add Raster Variable
Add a raster variable, which is a default value that can be changed.
Delete the selected elements in the diagram.
Save the raster function template to the Project category or Custom category section of the Raster Functions pane.
Save the raster function template with a new name and location.
Open the Raster Functions pane.
The RFT below demonstrates a methodology for describing burn severity and the health of vegetation recovery using prefire and postfire imagery.
This example RFT is composed of the following raster functions:
- Apparent Reflectance—Express the input imagery as albedo, which is the percentage of the available energy reflected by the planetary surface. It is commonly used by scientific users for complex modeling and technical remote sensing applications.
- Band Arithmetic—Perform a normalized burn ratio (NBR) index for prefire and postfire data from the output of albedo data.
- Minus—Create the change (or delta) in the NBR from the prefire NBR and postfire NBR.
- Remap—Define class break values for severity and vegetation health from the difference of the NBR.
- Attribute Table—Assign attributes and colors to the integer values created from each class defined in the Remap function.
Access the Function Editor
To build an RFT using the Function Editor, open a new editor window. Click the Function Editor button in the Analysis group on the Imagery tab. Then select and drag raster functions from the Raster Functions pane into the Function Editor pane.