Symbolize 3D features
The City of San Francisco has come up with two key points from long-term urban planning efforts: there are more jobs coming than houses, and not all neighborhoods are impacted in the same way. You're a graphics specialist working for a newspaper, and you must convey these takeaways with a single image. The graphic needs to be a dramatic, yet simple, representation of the data that can be used as a static media element in an article for public consumption.
Create a scene
In this scenario, you'll create a single image showing an overview of job and housing growth potential in San Francisco for use in print media. Because the consumers will not be able to pan or zoom around the image, or click individual features to learn more, the 3D scene you author will need to be clear and uncluttered, while still providing a high-level understanding of where jobs and housing are expected to grow.
- Start ArcGIS Pro. If prompted, sign in using your licensed ArcGIS account.
If you don't have ArcGIS Pro or an ArcGIS account (for ArcGIS Online or ArcGIS Enterprise), you can sign up for an ArcGIS free trial.
- Under New, choose Local Scene.
- Name the new project SF Job and Housing Growth and save it in the location of your choice. Make sure the Create a new folder for this project box is checked.
- Click OK.
A new, blank scene opens. Because your area of interest for your 3D view is relatively small in extent, a local scene is the best choice. You do not need to see the rest of the planet or allow for the curvature of the earth like a global scene does.
- In the Contents pane, under Elevation Surfaces, right-click WorldElevation3D/Terrain3D and choose Remove.
Removing the default elevation source for the scene makes the ground flat. A flat surface for the scene is important because you need the vertical bars showing potential jobs and housing to start from the same height. Additionally, the terrain of San Francisco is not an important component of the information you need to communicate in this scene.
- On the ribbon on the Map tab, in the Layer group, expand the Basemap gallery. Choose Dark Gray Canvas.
A simple, dark basemap will let your other content stand out more. You do not need to communicate the names of roads, neighborhoods, or water bodies.
- In the Contents pane, uncheck the World Dark Gray Reference layer to turn it off.
Add neighborhood boundaries
Once you have a plain basemap to start with, you'll start adding data. One of the key takeaways from the Planning Commission report was that neighborhoods will face varying impacts. To illustrate this, you'll add neighborhood delineations to show which districts will be more affected. After accessing the data, you'll be able to display it in the way you want.
- Download the SanFrancisco2050 geodatabase from the Learn ArcGIS organization.
- Unzip the geodatabase and save it in the project folder you created with the project.
- In the Catalog pane, expand Folders and expand the project folder.
If the Catalog pane didn't open when you created the project, you can add it from the View tab on the ribbon. In the Windows group, click Catalog Pane.
- Open the SanFrancisco2050 geodatabase that you unzipped and drag the NeighborhoodBoundaries layer onto the map.
The new layer is added to the map. Symbology is typically defined in the unit points. To show it using a more real-world unit, you'll change the Display setting before changing the symbology of the neighborhoods layer.
- In the Contents pane, right-click the new layer and choose Properties.
- In the Layer Properties window, click the Display tab and check the Display 3D symbols in real-world units box.
You can now define the symbology for this layer in measurable distance units—such as meters or feet—rather than the traditional 2D map symbol unit of points. For polygon features, the real-world units option allows you to set an outline width that covers the same amount of real-world space, regardless of how far it is from the viewpoint.
- Click OK.
- In the Contents pane, click the symbol for the NeighborhoodBoundaries layer.
The Symbology pane opens to the gallery. The gallery contains popular or common symbols. You'll use gallery symbols later.
- At the top of the Symbology pane, click the Properties tab. Next to Color, expand the color selector window and choose No color.
- Expand Outline color and choose any variation of light blue. For Outline width, type 25 m.
- Click Apply.
The neighborhoods layer will provide context for how much area each of the vertical symbols for jobs and housing represents. The thickness of the perimeter line is consistent, in real-world space, across the view.
Symbolize job data
To symbolize the projected job growth, you'll use a preset. Presets have a number of symbology properties already set up so that they can be quickly applied to your data, but they also have some cartographic limitations. In this case, they're a quick way to show 3D data. Once you add the data, you'll need to configure a few properties to show the correct attributes.
- On the ribbon, on the Map tab, in the Layer group, click Add Preset and choose Thematic Shapes.
- In the Add Data window, browse to the project folder and double-click the StatisticsByNeighborhood from the SanFrancisco2050 geodatabase.
The layer is added to the map, though depending on your zoom extent, the default symbology may be too small to see.
- In the Symbology pane, choose the Standing Cylinder symbol.
- For Height, expand the menu and choose the JOB_COMM attribute.
- For Scale, type 0.05.
This decimal defines the aspect ratio—each symbol's height will be multiplied by 0.05.
If your OS has number format settings other than EN-US, please type 0,05 using a decimal separator that respects your OS number formatting, otherwise it will be rounded as 1 and your cylinders will appear extremely high.
- Uncheck Use aspect ratio. For Width, type 250.
The projected job growth for San Francisco is symbolized.
To tilt and rotate the scene, press the V and B keys or use the navigator in the lower left corner.
Next, you'll symbolize projected housing growth for comparison. Because the data is also contained in the StatisticsByNeighborhood layer, you'll rename the jobs layer before adding it.
- In the Contents pane, click StatisticsByNeighborhood twice to edit it. Rename the layer Job Growth.
Symbolize housing data
Next, you'll add data showing projected housing growth. Because the data is contained in the same layer, the point symbols are in exactly the same place. To fix the visual problem this presents, you'll use an offset, moving the housing data to the side of the jobs data. Because you need to set this additional property, you'll add the data and symbolize it using a slightly different method.
- In the Catalog pane, browse to the SanFrancisco2050 geodatabase and add StatisticsByNeighborhood to the map a second time.
Remember, all the data is contained in the same layer. This time, you'll symbolize the layer to show housing growth.
- In the Contents pane, drag the StatisticsByNeighborhood layer you just added from 2D Layers to 3D Layers and rename it Housing Growth.
- Right-click the Housing Growth layer and choose Properties. On the Display tab, check the Display 3D symbols in real-world units box, then click OK.
- Click the symbol for the Housing Growth layer to open its symbology.
- In the Symbology pane, click the Gallery tab and search for cube symbols.
If you search for cube in non-english version of ArcGIS Pro, the result returned may be unpredictable, because search keywords are translated without any context. Instead, you may search for Standing Cube manually within the ArcGIS 3D symbols.
- Choose Standing Cube.
- Click the Properties tab and click the Layers button.
- If necessary, expand Appearance and change Height to 200 m.
The Width and Depth fields change to match.
- Click Apply.
All the cube symbols now stand 200 meters high. You'll use the same aspect ratio as before, 0.05 times their actual value.
- In the Symbology pane, click the back arrow, and then next to the Primary Symbology button, click Vary symbology by attribute.
- Expand Size. Under Size, uncheck Maintain aspect ratio.
If you maintain the aspect ratio, the width and depth of the cube will change when you calculate the height.
- Under Height, for Field, click Set an expression.
The Expression Builder opens and Arcade is set by default.
- In the Expression Builder window, under Fields, double-click NET_UNITS.
The housing units attribute is added to the Expression box.
- After the NET_UNITS attribute, type * 0.05 to create the expression $feature.NET_UNITS * 0.05.
- Click OK.
The housing data is correctly symbolized now, but there is a visual problem in the scene—the symbols for the two layers are centered in the same location. To fix the overlap, you'll offset (move) the extruded square symbol to the left.
- At the top of the Symbology pane, click Primary Symbology. Click the cube symbol, and if necessary, open the Layers properties.
- Expand Position and change X to 50%.
- Click Apply.
- Save the project.
The relative values for housing and jobs are now being displayed side by side, but it's not clear what yellow means and what red means. You need to include an in-scene legend. Yes, you could add a color-based legend image as a postproduction step, but in this case, it's better to use in-scene objects so they get the same lighting, shading, and coloring as the features they're representing.
Add legend symbols
You may know what the symbols on your map mean, but without a legend, your audience won't know what they show. Instead of a traditional legend with a list of symbols and their meaning, you'll add two additional points that show the total projected growth of jobs and housing for the city as a whole. These numbers were calculated using Summary Statistics, and the points have already been created to save time.
- In the Catalog pane, browse to the project folder and drag SummaryPoints.lpkx onto the map.
A group layer with points for housing and job data is added to the San Francisco Bay. These points represent the total number of jobs and housing units and will serve as the legend. They are symbolized the same way the neighborhood data is but have an aspect ratio of 0.02x for a more manageable height. Their width is 1,000 meters to better stand out from the neighborhood data.
- In the Contents pane, expand the Summary Points group layer. Right-click Total Job Growth and choose Attribute Table.
The attribute table contains two values, the summed totals of job and housing growth for the entire city. You'll use these values in the legend.
- Close the attribute table.
- On the Quick Access ribbon, save the project.
The 3D mapping portion is complete.
Export a layout
Previously, you made a 3D map of the projected growth of jobs and housing in the city of San Francisco. To share this data with readers in the form of a 2D print publication, you'll export the scene to a layout and add explanatory text. When you're happy with the graphic, you'll export it to print, embed, or share.
Add a layout
A layout is a way to design a static map for printing. Once added to the layout, any map you choose to show is largely static. This allows you to add other elements to it, like titles, text, legends, scale bars, north arrows, and so on. For this graphic, you'll add the map frame to a layout and change the view before making it static.
- If necessary, open your SF Job and Housing Growth project.
- On the ribbon, click the Insert tab. In the Project group, click New Layout.
- Under ANSI - Landscape, choose Letter.
A layout pane is added to the project. You can switch between panes by clicking the Scene and Layout tabs under the ribbon. The layout is blank until you add a map frame.
- On the ribbon, in the Map Frames group, click Map Frame and choose the Scene with the image of downtown San Francisco.
This is the scene you've been working on; the other is a default local scene view.
- Draw a rectangle the size of the layout.
The scene is added to the layout. This sets the basis for your final image, but it is missing key metadata regarding what the scene represents.
You might notice that the extruded symbols are pointing away from each other across the view. This is a visual effect caused by viewing the world in perspective. In a perspective viewing mode, the light rays converge in the distance and things that are farther away appear smaller. This is how people naturally view the world, so it seems realistic.
- Right-click the map frame and choose Activate.
With the map frame activated, you can pan and zoom as well as change the view.
- On the ribbon, click the View tab. In the Scene group, click Drawing Mode and choose Parallel.
When the size of a feature matters—like in your case, where taller columns represent larger values—a perspective view can cause misrepresentation of the data. Moving the camera to a different viewpoint makes closer objects appear larger, and therefore more important, than others. To avoid this, you should use a parallel, or isometric, view mode.
- Position the map so it looks how you want it to look, and then at the upper left of the Layout pane, click Layout to deactivate the map.
Add label text
Now that you've decided how you want your map to appear, you can add text on top of it. The graphic needs several text elements, such as a descriptive title and legend labels. Note that if you choose to move the map, the text elements will not move with it.
- On the ribbon, if necessary, click the Insert tab. In the Text group, click the Rectangle button and draw a text rectangle at the top of the map.
A text box is added to the map. It may be difficult to see because the default text is black and the basemap is dark.
- In the Contents pane, double-click the Text element.
The Element pane opens to Format Text.
- In the text box, type Predicted Growth for San Francisco (2050).
- At the top of the pane, click the Text Symbol tab and click the Properties tab.
- Expand Appearance and set Color to Arctic White.
- For Size, choose 21 pt and click Apply. If necessary, click Yes in the associated message box.
Now you can see the title text against the basemap. The title explains where the data is located and what it is displayed and visualized on the map. You'll also put labels on the legend bars you added earlier.
- Add another text element to the right of the Total Job Growth bar and type 389,000 Jobs.
- On the Text Symbol tab, change Color to a Solar Yellow like the cylinder color and change Size to 14 pt.
- Change Font style to Bold and click Apply.
- Add a third text element under the jobs label and type 212,000 Houses.
- Make the text color a Mars Red and change the size to 14 pt. For Font style, choose Bold and click Apply.
The additional text explains what data the yellow and red symbols represent and provides exact numbers for the totals for San Francisco as a whole. Specific numbers for each neighborhood are omitted from the image, as they would needlessly clutter the larger story.
In print media form, the exact numbers for job and housing growth by neighborhood could be included in tabular form elsewhere in the article.
- Save the project.
Export the layout
Finally, you'll export the layout to share, print, embed, and so on. When exporting a layout, you can choose file type, image quality, and other settings.
- On the ribbon, click the Share tab. In the Export group, click Layout.
- In the Export Layout window, name the layout San Francisco Job and Housing Growth and choose the folder you want to save it to.
You now have a saved copy of the project to print or embed in the layout of another printed report. The graphic you created is high quality and suitable for the citizen audience you want to reach.
You can find more lessons in the Learn ArcGIS Lesson Gallery.