Our API, Snapshot, is always being improved. As we mentioned in our 2022 Goals post, we are making new reports and functions available. Here is just a look at everything new for Snapshot this spring.
New Report Styles
Our PDF reports have become popular for fast and easy demographics. We have three new styles of reports, including:
- Traditional report showing multiple radii side by side
- Multi-column report, with or without benchmarks, showing one radius at a time
- Retail Gap report, including optional shading and/or text coloring
The most notable addition is the retail gap, or void, report. As you can see on image below, the color coding displays just at a quick glance the potential of an area, critical information for economic development and commercial real estate. Retail gap reports can be run for radius areas, drive times, custom drawn polygons, or standard geographic areas.
New Report Formatting Commands
- Embedded commands
In the past, most report formatting commands were “command line only” with the intent of having generic templates. These are still possible, but all report format commands can now be embedded in the template itself or passed by the command line
- New Commands
New commands for column shading and highlighting have been added (see the gap report for an example), use the !SETCOLUMN= function
The !VINTAGE command can be used to add the “vintage” of the data element. This can be useful when displaying time series data, such as POP10, POP20, POPCY which will read “Population 2010”, “Population 2020”, and “Population 2021” instead of all reading “Population” if !VINTAGE=OFF
Commands for formatting report type, !REPORTSTYLE=. The values are NORMAL (multiple geographies and benchmarks as separate columns), COMPACT (single geography per report), BENCHMARK (single geography + benchmark per report), VOID (produces a retail gap/void report), and PROFILE (produces a segmentation profile report)
In addition, the !COLUMNS=<n> and !COLUMNSPACING= are used with COMPACT and BENCHMARK reports to determine the number of columns in the report (2 is default). The !PAGE command in a multi-column report advances to the top of the next column, not page.
Margins are now user set with either !MARGINS=<top>,<bottom>,<left>,<right> or the individual commands !MARGIN.BOTTOM=, !MARGIN.LEFT=, !MARGIN.RIGHT=, and !MARGIN.TOP=
- New Objects
Two objects have now been implemented. The @TEXT command will add a text block to a report which can either be predefined or defined at run time. At run time, it is possible to select a text file on the basis of the value of a variable. The text can be formatted – style and alignment, and the entire text block can be outlined, highlighted, and boxed as desired.
The second object is the @TABLE command which allows a predefined table – such as a table where the rows are NAICS codes and the columns are retail potential, retail sales, and retail gap. These tables definable at run-time by selecting a “primary” table (e.g. #RETAIL_SALES), then one or more “secondary” tables. The user is responsible for ensuring that the tables are compatible.
Work is well underway to add a series of graphics objects (@CHART, @MAP) and the ability to embed external content @EXTERNAL, such as FEMA flood zone descriptions in a risk report.
New Functions
The main Snapshot functions now include –
Data Create a database
Report Create a report or csv files with
Snapshot now includes 60 functions which can be used in formulas. Basically, these can be classified in four categories:
- Statistical functions
- Mathematics functions
- Text functions
- Spatial functions
While we have added more in the traditional areas, the text functions are new —
DOMINANT() which is a combination of the RANK() and LOOKUP() functions. For example, to return the Panorama segment name of the second largest segment – DOMINANT(2,#PANORAMA_HHLDS,PANORAMA_TEXT)
LOOKUP(VARIABLE,STRING_TABLE) returns the text element pointed to by VARIABLE. It can work with any pre-defined string table, including values for crime and weather risk values.
CHOOSE(VARIABLE,STRING_1,STRING_2,STRING_3,….,STRING_N) allows users to select a value label dynamically.
An example of how to use these functions is –
MYVAR = CLASS(INCCYMEDHH,25000,50000,100000,200000,500000), SUPRESS
TEXTVAR = CHOOSE(MYVAR,Very Low, Low, Average, High, Very High)
With an income of 38500, MYVAR = 2 (note that can optionally suppress output) and the output variable TEXTVAR would be output as “Low”.
Recent Comments