Skip navigation
All Places > Esri Technical Support > Blog > Author: RRichman-esristaff

Tips for figuring out what is going on when things aren’t working in ArcMap

Have ever you called Esri Support Services (ESS) with one question and the analyst asks you a seemingly unrelated question? Perhaps you are trying to open a DBF in ArcMap, and we want to know what version of Excel you use. Or perhaps you cannot access printing drivers and we ask you how much memory ArcMap is using. Sometimes the questions we ask can seem random, but they help us narrow down the root cause of the problematic behavior. Most processes in ArcMap involve multiple parts and file locations, so it can be difficult to determine what drives a specific behavior without taking a systematic approach to ruling out possible causes. To that end, this post provides a series of questions that will help you narrow down what may be causing problematic behaviors.


Do you Meet the Minimum System Requirements?

This is a simple question and hopefully one that was asked prior to installation, but it is always encouraged to check, particularly if you recently upgraded your software. A quick way to check if you meet the system requirements is to use the Can You Run It tool. If your system does not meet the requirements, you may need to upgrade your system.


Does ArcMap Open?

If ArcMap does not open, or crashes when opening a new, blank map document, this indicates that either something is wrong with the installation of ArcGIS Desktop or with the local customization of the program. In this case, here are a few troubleshooting steps:

  • Perform a soft reset (remove local customizations including folder connections and toolbar arrangement) by renaming the "C:\Users\<USERNAME>\AppData\Roaming\ESRI" folder as "Esri_old". When you reopen ArcMap, the folder is re-created.

Note: the AppData folder is a hidden folder, so you may need to unhide it.

  • Repair the software by navigating to Control Panel > Programs and Features > right click on ArcGIS Desktop > Uninstall/Change. Select the option to repair. Once the repair is finished, reboot the machine and test again.


Is the Issue MXD Specific?

When encountering a problematic behavior in ArcMap, a good place to start is to determine if the problem only occurs in a specific MXD. You can do this by opening a brand new MXD, dragging and dropping the data from the original MXD to the new one, and then trying to reproduce the issue. You can also copy and paste layout elements from one MXD to another. If the issue does not occur in the new MXD:

  1. Use the new MXD you created to test if everything is working correctly.
  2. If you have elements that cannot be easily copied and pasted from one MXD to another, use the MXD Doctor utility.
Stay tuned for an upcoming blog on MXD troubleshooting!

Is the Issue Workflow Specific?

Many users have multi-step processes in ArcMap as a part of their workflow; however, the more steps used, the more likely it is that an error can creep in. An error early on in a multi-step process can make it difficult to determine the root cause, as the issue can be introduced several steps before being observed.

Some steps that can assist in sorting out these workflow issues are:

  1. Write out the entire workflow from data acquisition to the step where the issue is seen.
  2. Teach the workflow to someone else. Often we only catch our mistakes when we have to explain what we did to another person.
  3. If you are using a script or model to perform a workflow, try the same workflow manually. If it works manually, break the script or model into parts and test each part individually.


Is the Issue Data Specific?

If the issue still occurs when you move the data to a new MXD, it is possible that the issue is data specific. To see if this is the case, test similar data that is stored in the same location, is in the same format, and contains similar features. For example, if you have trouble editing a shapefile containing points, edit a different point shapefile. If you do not have appropriate data to test with, you can also create a new shapefile, add some features to it, and test with that. If the issue only occurs with a specific dataset, then it is possible to take some basic data troubleshooting steps such as:

  1. Export the file to a different format (for example, export shapefile to feature class or GRID raster to TIFF).
  2. With vector data, try the Check Geometry and Repair Geometry tools.
  3. If the data does not draw in the correct location, check the projection. If the layer was created in one projection, and the projection was not correctly assigned to the data, it can draw in unexpected locations. For more information about figuring out what projection data was collected in, see here.


Is the Issue Location Specific?

Another potential cause of unexpected behavior is the location of the data. Location includes both the physical location (local machine drive versus server) and the workspace (geodatabase or folder). If the data is being accessed over a network, any issues or restrictions on the network may affect the way the data behaves in ArcMap. Likewise, any issues or permission limitations in the geodatabase can contribute to problematic behavior. If you suspect the issue is location specific:

  1. Move the data. If it is in an SQL database, move it to a file geodatabase or another SQL database. If it is on a network drive, move it to a local drive, then see if the issue persists.
  2. Ensure you have appropriate permissions for the location of your data.


Is the Issue Install Specific?

If the problematic behavior persists in all MXDs and with different datasets in different locations, there may be an issue with the installation. It is possible that either the installation file was corrupt or that the file was corrupted after installation. The troubleshooting steps in this case are the same as those for when ArcMap does not open at all. If you suspect the install file might have become corrupt during download, you can re-download the install file from and reinstall.


A diagramatic view of the ArcGIS troubleshooting workflow

The Internet Is Your Friend (Mostly)

Most of the time, you aren't the first person to experience a particular issue and chances are, you can unearth some relevant findings on the internet. A good starting place is always ArcGIS documentation. If an issue is particularly common, it may be documented in Esri’s Knowledge Base, a collection of technical articles written by Esri staff. Larger issues, such as troubleshooting ArcMap performance or not being able to load Esri basemaps, may have been topics on the ArcGIS Blog or Support Services blog. Additionally, Esri hosts a very active user forum, GeoNet, where developers and other members of the Esri community can ask or answer posted questions. However, if you do find a suggested workflow, always remember that what works for someone else may not work for you. Therefore, it is highly encouraged to make copies of any MXDs or data, and proceed with caution.


Call ESS

The above steps do not address all possible issues, but they are effective and thorough starting points when trying to narrow down issues in ArcMap. If you still cannot narrow it down, give Esri Support a call! Our job is to assist you with these particular issues, and we always enjoy helping our customers resolve whatever issues they may be facing! When you do have to call, we kindly ask that you have the following information available so we can route you to the best analyst for the job and ensure that analyst has the information needed to begin troubleshooting with you!

  • Software version and license level
  • Operating system
  • Device, if using a mobile application
  • Synopsis of the issue
  • Detailed workflow
  • Error message
  • Test data

Note: You can contact ESS through phone, web chat, and web form. Start here.

We look forward to hearing from you!

Rebecca R. - Desktop Support Analyst

With the addition of the Train Random Trees Classifier, Create Accuracy Assessment Points, Update Accuracy Assessment Points, and Compute Confusion Matrix tools in ArcMap 10.4, as well as all of the image classification tools in ArcGIS Pro 1.3, it is a great time to check out the image segmentation and classification tools in ArcGIS for Desktop. Here we discuss image segmentation, compare the four classifiers (Train Iso Cluster Classifier, Train Maximum Likelihood Classifier, random trees, and Support Vector Machine), and review the basic classification workflow.Image Segmentation

Before you begin image classification, you may want to consider segmenting the image first. Segmentation groups similar pixels together and assigns the average value to all of the grouped pixels. This can improve classification significantly and remove speckles from the image.Train Iso Cluster Classifier

The Iso Cluster is an unsupervised classifier (that is, it does not require a training sample), with which the user can set the number of classes and divide a multiband image into that number of classes. This classifier is the easiest of all the classifiers to use, as it does not require creating a training sample and can handle very large segmented images. However, this classifier is not as accurate as the other classifiers due to the lack of training sample.Train Maximum Likelihood Classifier

The Maximum Likelihood Classifier (MLC) uses Bayes' theorem of decision making and is a supervised classifier (that is, the classifier requires a training sample). The training data is used to create a class signature based on the variance and covariance. Additionally, the algorithm assumes a normal distribution of each class sample in the multidimensional space, where the number of dimensions equals the number of bands in the image. The classifier then compares each pixel to the multidimensional space for each class and assigns the pixel to the class that the pixel has the maximum likelihood of belonging to based on its location in the multidimensional space.Train Random Trees Classifier

One supervised classifier that was introduced with ArcGIS 10.4 is the random trees classifier, which breaks the training data into a random sub-selection and creates classification decision trees for each sub-selection. The decision trees run for each pixel, and the class that gets assigned to the pixel most often by the trees is selected as the final classification. This method is resistant to over-fitting due to small numbers of training data and/or large numbers of bands. This classifier also allows the inclusion of auxillary data, including segmented images and digital elevation model (DEM) data.Train Support Vector Machine Classifier

Support Vector Machine (SVM) is a supervised classifier similar to the MLC classifier, in that the classifier looks at multidimensional points defined by the band values of each training sample. However, instead of evaluating the maximum likelihood that a pixel belongs to a class cluster, the algorithm defines the multidimensional space in such a way that the gap between class clusters is as large as possible. This divides the space up into different sections separated by gaps. Each pixel is classified where it falls in the divided space.Image Classification Workflow:

With the addition of the Create Accuracy Assessment Points, Update Accuracy Assessment Points, and Compute Confusion Matrix tools in ArcGIS 10.4, it is now possible to both create and assess image classification in ArcMap and ArcGIS Pro.

The general workflow for image classification and assessment in ArcGIS is:
  1. If desired, use the Segment Mean Shift tool to segment your imagery.
  2. Create a training sample using the Image Classification toolbar (if you are using the Iso Cluster classification, you can skip this step).
  3. Use one of the four training tools (Train ISO Cluster Classifier, Train Maximum Likelihood Classifier, Train Random Trees Classifier, Train Support Vector Machine Classifier).
  4. Use the Create Accuracy Assessment Points tool on the classified image to create randomly placed points that have values extracted from the image.
  5. Either use the Update Accuracy Assessment Point tool to compare this classification to previously created classifications, or manually edit the points and visually assess a reference image.
  6. Use the Compute Confusion Matrix tool to create a confusion matrix from the accuracy points.
  7. Use the measures of accuracy (the user’s accuracy, producer's accuracy, and Kappa index) calculated by the confusion matrix to assess the classification. Make changes to the training sample, as needed, to improve the classification.

The best part about this six-step process is that it makes it pretty easy to compare different classification methods, and it’s often important to compare the different methods. Getting your training sites nailed down (step 2) is usually the toughest part, but steps 3 through 7 fly by since the analysis is done for you. In the end, you have several classified raster images to use in your work and can choose the best result based on your personal objectives.

As an example, we used this workflow to classify a Landsat 8 image of the Ventura area in Southern California. We used the MLC, SVM, and Random Trees (RT) methods to classify a single Landsat 8 raster captured on February 15, 2016. We classified the image into nine classes and manually selected training samples and accuracy assessment (“ground truth”) points. Additionally, we used a segmented image as an additional input raster for each classifier. Once we classified the rasters, we computed a confusion matrix for each output to determine the accuracy of the classification when compared to ground truth points. The Kappa index in the Confusion Matrix gives us an overall idea of how accurate each classification method is.

The results showed that each method did pretty well in the classification when looking at the Kappa indexes, as well as based on a visual assessment. In order of accuracy (from the highest Kappa index to the lowest), we see that the SVM output was the most accurate (Kappa = 0.915), followed by Random Trees (Kappa = 0.88) and finally the MLC method (Kappa = 0.846).Confusion-Matrix-1024x186.png

We can see from the Confusion Matrix that some methods did better than others for specific classes. For example, the MLC didn’t do too well with Bare Earth classification, but RT and SVM weren’t too much better. This is great information for honing in on a better-classified image–now we know that we should focus on getting better Bare Earth training samples to improve our results. You could keep going with this until you get a really high accuracy for all classes, if that’s what you need for your analysis. If you need just a general idea of the area, you could just take what you get in Round 1! Check out what we got:

Source image:Source-Image.png

Classified Image:Classified-Image.png

Make sure to check out the new Image Classification Wizard with the release of ArcGIS Pro 1.3!
Julia L. and Rebecca R. - Desktop Support

Looking for a way to model your city in 3D? Look no further! To create a 3D model of a real world city in CityEngine that can be used for city planning, modeling of 3D phenomena, or even in 3D gaming environments, all you need is a DEM, streets data, and building footprints.For those with CityEngine 2016.0, please read this post that shows you how to quickly prepare data for CityEngine with the Get map data wizard.


Before you bring your GIS data into CityEngine, however, there is some data preparation involved. Here, we review key information you need to know before getting started.Final-1024x762.jpg


Common Terms used in CityEngine


Terrain = Digital Elevation Model (DEM)


Texture = Aerial Image or image for building facades


Graph = Streets


Lot = Building Footprint


Terrain and Texture


The first step is to gather your terrain and texture to overlay on top of the terrain. If you do not have a DEM, you can download one from the USGS. For terrains, 16-bit and 32-bit images with a maximum size of 4000 by 4000 pixels are supported. In order to verify the bit depth and number of rows/columns of an image, you can load it into ArcMap and check the information on the Source tab of the Raster Layer Properties.


Another key part of preparing the DEM and Aerial Image is to ensure that they have the same extent. This can be done in ArcMap by drawing a polygon graphic for the project area and running the Clip tool on the raster to clip both the terrain and texture to the same extent, or exporting the raster with the selected graphics as the clipping extent.


Another common issue is that the image has four or more bands. When this is the case, the aerial image will appear washed out. To resolve this issue, use the Make Raster Layer Tool in ArcMap and create a raster with three or less bands. The output from this tool will be temporary so it must be exported out in order to bring it into CityEngine.


A terrain draped with a texture.


Streets and Buildings


The second step is to obtain feature data for streets and buildings. Commonly used street formats include shapefiles, geodatabases, KML, and OpenStreetMap (OSM).  When you import the street data into CityEngine, sometimes there are messy intersections and merged nodes. We recommend using the Cleanup Graph tool to clean up these intersections, or manually edit the streets. If there are street segments that extend beyond the area of interest, use the selection tool to select the segments and delete them. Streets may also appear below the DEM - this can be rectified by running the Align Shape To Terrain tool, or manually raising the streets.


Additionally, OSM contains options for importing building footprints. With CityEngine you have the ability to generate your own lots, use your own data, or use those provided by a third party, such as OSM. An important distinction is that lots in CityEngine can represent the entire legal lot for a parcel, the building footprint, or lots with building footprints. When importing an OSM file, check the Highways and Buildings in order to import both the streets and the building footprints. Once the streets are imported they may be offset from the terrain and this can be remedied by using the Align Graph to Terrain tool in CityEngine. 



Adding streets and building footprints.



Once you have the terrain, texture, streets, and building data, the next step in data preparation is ensuring that your data is correctly projected. It is good practice to ensure that all layers are in the same Projected Coordinate System. CityEngine does not support Geographic Coordinate Systems such as WGS 1984 or NAD 1983 for the scene coordinate system, so the scene will need to be in a Projected Coordinate system. Additonally, CityEngine can only apply datum transformations for vector data. For terrains and textures you must ensure the datum matches the datum used in the scene. We recommend bringing the data into ArcMap prior to importing into CityEngine to ensure that everything lines up correctly and has the same projection. If you are downloading your data from OpenStreetMap, the OSM data format is not supported by ArcMap, so CityEngine will reproject the data to the scene projection and perform a datum transformation, if necessary (OSM uses the WGS 1984 Geographic Coordinate System.)


CGA rules


Once all data has been added to your scene, you can start the actual modeling. CityEngine uses CGA (Computer Generated Architecture) rules to programmatically generate buildings from footprints or lots. These rules determine the geometry of each building created (has four walls and a roof) as well as color, textures, height, number of floors, roof shape, and so forth. CGA rules usually have an element of randomness so that the city has a natural and varied appearance. For example, a rule could be created that all buildings are between 30 and 50 feet high and have roofs with pitches between 20 and 30 degrees.

Writing CGA rule files can be an involved process, but fortunately there are a number of pre-existing CGA rule files available to get you started:

  • The Buildings_From_Footprints.cga file found in the Esri.lib project (installed with CGA.)
  • A number of CityEngine projects with CGA files have been made available for public use and are available on ArcGIS Online by the CityEngine team here.
  • Esri also provides a number of tutorials and examples, most of which come with pre-made CGA files which can be copied and modified, and these can be found here.

If you are interested in writing your own CGA files, check out this tutorial as well as the CityEngine manual.


The building footprints and streets after CGA rules have been applied


3D models


If you have areas of the city with distinct architecture or landmark buildings, you may want to consider adding pre-constructed 3D models. These models can be created in one of the many 3D modeling software programs, such as Blender or 3ds Max, or purchased on a 3D warehouse such as 3D Warehouse or Turbo Squid. Just be sure that the models are in one of the supported formats (multipatch, DAE, FBX, KML, KMZ, and OBJ). Most 3D models are not created in projected space, but once they are added to CityEngine they can be scaled, rotated, and positioned as needed.


Adding 3-D models to the scene


How big can I go?


One question that we are frequently asked is “How big of a city can I have in CityEngine?”


There is no hard and fast rule for this, as it depends on the number of shapes, the complexity of the models, the number of textures, as well as your system memory and graphics card. You can check the system requirements and recommendations to see if your system can support CityEngine.


Remember that CityEngine is a modeling tool and not a visualization tool. When you are testing your rule files, it is generally good practice to only generate a portion of your city. This will improve performance both for the model generation and drawing. Then, when you have finalized the rules, you can generate all the models and export it to several different file formats (such as multipatch, DAE, FBX, KML/KMZ, OBJ, CityEngine Web Scene 3ws, Renderman RIB, and e-on Vue VOB) with the expectation that this may take some time if your city is very large.


Once the data is prepared, creating your model is just a question of bringing the data into a scene and applying the rule files. From there, you can refine your model by improving the CGA rule files, growing new streets and parcels to plan new developments, or creating a complex city with different rules for different sections of the city.


For more information about getting started with CityEngine, check out the links below.


Additional Resources:

Rebecca R. and Andrew J. - Desktop Support Analysts

furtureNYC-300x248.jpgCityEngine is a great way to create entire cities of textured, 3D building models without designing every building. These models can be used in 3D scenes, animations, and game platforms. However, when exporting models made in CityEngine to third-party software, there are a number of considerations. This blog post reviews settings options in the Export wizard to help you render CityEngine models in third-party software.

When you select your models and open the Export wizard (File > Export Models), you must first choose a format. The formats available for exporting models from CityEngine 2015 to 3D modeling software are:

  • Keyhole Markup Language (KML)
  • CityEngine Web Scene (.3ws)
  • Collada DAE
  • Wavefront OBJ
  • Autodesk FBX
  • E-On Software Vue VOB
  • Pixar RenderMan RIB
  • Esri FileGDB

The format you select depends on what formats are supported by third-party software. Some software products partially support formats (e.g., the software supports geometry, but not textures), and others do not fully support texture (e.g., OBJ only allows for one texture layer).

Once you select a format, you must adjust several settings to ensure the models display correctly in third-party software. As these settings vary from format to format, I will cover the concepts involved, rather than specific settings for each format.

Export Geometry: There are two options for exporting the scene, as shapes (i.e., building footprint polygons) or as models (3D buildings). There is also an option to export the shape fallback, which exports the scene with 3D models but falls back to the polygon footprint if the model cannot be exported.
Normals: Normals (vectors perpendicular to surfaces) are used in 3D modeling programs to determine surface appearance given a set light source. Normals can be calculated for either the faces or vertices of a model. Models with face normals appear more faceted, whereas models with vertex normals look smoother.
UVs: UVs record where and how textures are applied to 3D objects. Without UVs, textures cannot be applied to 3D models. In CityEngine, UVs are created for each surface, and UV mapping for the entire model is not supported. This means there is a UV map and a texture for each surface in the model, rather than a single map and texture for the model. Additionally, multiple textures may be applied to a surface (e.g., a building may have both a brick texture and a dirt texture to seem weathered), so surfaces can also have multiple UV maps. OBJ files only support one UV per surface, so when exporting a CityEngine model to OBJ, only the first UV layer is included.
Global Offset: Scenes in CityEngine have projections, so the coordinates of the models are usually very large. In contrast, most 3D modelling software is built around an origin at ‘0,0’ and does not have real-world coordinates. Clicking the center button calculates the center of the models and subtracts the center coordinates from the coordinates of the models, so when models are exported to other programs, the programs draw centered on ‘0,0’. However, if you bring models into an existing 3D scene, you may need to scale the models to the correct size and position.
Textures and Materials: Textures are image files applied to a surface; materials are comprised of one or more textures and information about surface reflectivity. To maintain the applied textures from CityEngine in a different software, materials must be included in the model, and textures must be collected (i.e., copied to the same location as the model). Some model formats also allow you to embed textures, which copies the images to the actual model, rather than next to the model in the folder.

For more information about exporting models in CityEngine, check out the CityEngine documentationthis CityEngine Essential Skills video, the documentation of your third-party software, as well as the following Esri Knowledge based articles:FutureCityUnity.jpg
Rebecca R. - Desktop Support Analyst

Filter Blog

By date: By tag: