I have a layer with 400 point features that display a picture marker symbol on the map. We expect this number to increase a great deal. Unfortunately it's already noticeably slow. This is being rendered through a GIS portal written in C#, but it's also not that great when viewing through ArcMap. I'm pretty sure it's a performance thing with the PictureMarkerSymbol.

Is there a way to boost it's performance? If not, are there other options for displaying custom icons for map points?

  • Can you share what kinds of data this layer holds and why you have 400 different symbols on the same layer? I mean, yesterday I was handed a shapefile with 60 different symbols and was pissed off as I couldn't understand a thing. How can you, as a user of some sort, handle 400 ? It seem very inefficient. – jonatr Nov 22 '10 at 22:05
  • I don't have 400 different symbols. I have ~400 icons denoting that an image is at associated with a location. The icons are all the same. It's just with 400 it's slow, with 50 it's not. Even when the extent only shows ~5. – Carter Nov 22 '10 at 22:27
  • Clarified in post. – Carter Nov 22 '10 at 22:30

Make your images Enhanced Metafile Format (.emf)

The Windows Enhanced Metafile (EMF) is the best format for inserting images as pictures in ArcMap. EMF files allow resizing of images in ArcMap without the *loss if integrity or resolution*, which you may see if you use a JPEG or BMP formatted image.


You would think ESRI would support IMPORT of .svg but sadly no ONLY export.

  • I will try this, thank you. Just to clarify, will this actually increase performance? You mentioned resizing, which is not something I'm doing. I'm not too concerned with resolution, the images look ok currently, I just want the layer to render more quickly. Could this potentially help that? – Carter Nov 22 '10 at 20:58
  • 1
    .emf should be much smaller than the bitmap picture markers as they are vector files. so yes - test on 10 of your 400 and see. – Mapperz Nov 22 '10 at 21:36

Also use zoom scale ranges. I think there is a 9.3 arcscript to cluster for different scales.

You could then show the different vector "pyramids" as the scale changes. Clustering will allow an area with many of one icon to show up as 1 point.

You might also implement a new icon showing icon groups, or just that there are several icon types in one location represented by one point.

Here is information about live clustering in flex and others. esri forums

And here is what I had seen for desktop. it is quite old so it may not work with 9.3 and probably not on 10. desktop cluster from acscripts

  • Would be interested to see a link to this clustering script. Would like to see if you could make use of it when publishing the MXD to server. – Simon Nov 23 '10 at 12:42
  • Thanks for the advice, I can't seem to find anything on accomplishing this for 9.3. I've asked another question here on that... gis.stackexchange.com/questions/3784/…. It would certainly be nice. – Carter Nov 25 '10 at 1:24
  • arcscripts.esri.com/… – Brad Nesom Nov 25 '10 at 20:31
  • there are some scripts here for desktop. they are a bit old but may still work on 9.3x – Brad Nesom Nov 25 '10 at 20:32

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.