Jump to content

 
Photo

ArcGIS - displace point markers in order to display all

- - - - -

  • Please log in to reply
14 replies to this topic

#1
benbakelaar

benbakelaar

    Ultimate Contributor

  • Associate Admin
  • PipPipPipPipPipPip
  • 658 posts
  • Gender:Male
  • Location:North Brunswick, NJ
  • Interests:maps, information, technology, scripting, computers
  • United States

I might have asked this question before, but I don't think I ever found a good solution. Let's say I have a list of 70 hospital locations, with only city and state. Since there may be more than 1 hospital per city, I end up with a map displaying 40 points. There must be some automated way of displacing the points that are on the same location, so that, if not all, at least closer to 70 points are displayed. Typically I do my geocoding outside of ArcGIS and then use Display X Y data, but I have no problem using the Arc geocoder. Does anyone know a solution or workaround for this?

#2
ELeFevre

ELeFevre

    Hall of Fame

  • Associate Admin
  • PipPipPipPipPipPipPip
  • 1,049 posts
  • Gender:Male
  • Location:Louisville, Colorado USA
  • Interests:Cartography, musical instruments, reading, hiking, craft beer
  • United States

Ben,

I'm a little confused as to why you would end up with only 40 points rather than 70? Are the points falling on top each other and only 40 are visible? Or are you missing 30 points?



#3
benbakelaar

benbakelaar

    Ultimate Contributor

  • Associate Admin
  • PipPipPipPipPipPip
  • 658 posts
  • Gender:Male
  • Location:North Brunswick, NJ
  • Interests:maps, information, technology, scripting, computers
  • United States

Exactly, sorry for not being clearer. Since the points all end up on top of each other, only 40 are visible.

These are geocoded with city/state, so of course they all have the same point. But I am also interested in why no GIS software I've used yet has this feature in general for displaying points - at least an option, because as you zoom out, points obviously begin to coalesce, and I think it's not too hard of a programming task to have them "spread out" so that all (or a certain percentage) are still displayed. Obviously this technique is useless in extreme examples - i.e. showing 70 points in a state when zoomed out to the national level.

Ben,

I'm a little confused as to why you would end up with only 40 points rather than 70? Are the points falling on top each other and only 40 are visible? Or are you missing 30 points?



#4
danielle

danielle

    Key Contributor

  • Validated Member
  • PipPipPip
  • 52 posts
  • Location:NYC
  • United States

We had written an Avenue script to deal with this problem. For points with the same location, we added an offset of a specified distance. You should be able to write a new script for ArcGIS, or maybe someone has already? I can email you the Avenue code to get you started if you'd like.

I think the true ArcGIS "solution" would be to store customized cartographic placements in a geodatabase, but that requires ArcEditor/Info. (ESRI, it would be nice to have these features in ArcView! Also storing table relationships.)

-Danielle

#5
benbakelaar

benbakelaar

    Ultimate Contributor

  • Associate Admin
  • PipPipPipPipPipPip
  • 658 posts
  • Gender:Male
  • Location:North Brunswick, NJ
  • Interests:maps, information, technology, scripting, computers
  • United States

Yes, that would be great if you could send me that Avenue script! Thanks, I no longer feel like my question was that crazy :)

If I do end up modding the script to worth with ArcGIS, I will post it for everyone. I guess I should also then post it in the scripts section of ESRI site.

#6
pghardy

pghardy

    Master Contributor

  • Validated Member
  • PipPipPipPip
  • 101 posts
  • Gender:Male
  • Location:Cambridge, UK
  • United Kingdom

... There must be some automated way of displacing the points that are on the same location, ... Does anyone know a solution or workaround for this?

You are not alone in wanting this, and there is some research work gone on recently in ESRI to prototype some point dispersal tools that might evolve to see the light of day in some future release of ArcGIS. The concept is to identify point clusters, then displace the clustered points into a regular distribution (ring, circle, cross, square, etc), centered on the cluster center

The trouble is, its one of those tasks that sounds simple, but making a generic tool is harder than it sounds.It would be a bit too restrictive to insist that the input points are totally identical, and if you allow a tolerance, what does it mean if you have a set of points where each is within the tolerance distance of a neighbour, but together they stretch over a long distance. Is that one cluster or several? For the dispersal, what should you do if there are several thousand superimposed points all on the same spot, so displacing them would over-fill the map? Do you allow two adgacent clusters to interleave when dispersed? Should this be one single geoprocessing tool that does clustering and dispersal, or should there be a one cluster tool and a separate dispersal tool, so that you could cluster things by attribute as well as distance? Do people mind if points are dispersed symmetrically, or do they need to apply barriers (keep dispersed cluster points on the same side of the road), or to disperse only within a polygon (keep dispersed points in the right state)?

We still hope to come up with something simple and useful, but rather than come up with an all-singing-all-dancing dispersal tool, we may say that the more complex situations are the responsibility of an Optimizer tool, which is also being researched. See the ICA workshop paper on "An Optimization Approach to Constraint-Based Generalization in A Commodity GIS Framework".

In the interim, there is a code sample of a renderer that does a simple form of this sort of task at draw time - see http://edndoc.esri.c...salRenderer.htm

I'd be interested in hearing feedback from other people with this sort of point dispersal need to know what use cases are common, and what the perceived challenges are.

Incidentally, I've now moved back to the UK from Californial, but I'm still 50% tasked and funded by ESRI Redlands to contribute on cartography and generalization.

Regards,
--
Paul Hardy
ESRI Europe (phardy@esri.com)

#7
Cartisan Maps

Cartisan Maps

    Contributor

  • Validated Member
  • PipPip
  • 24 posts
  • Location:Washington, DC
  • United States

Ben, I suggest the dispersal tool that Pghardy provided. I used it over a year ago, and I recall it getting the job done. I didn't use it for long, as it was a stop gap solution until I could get UN information officers to do QA/QC on their haphazardly produced datasets.

Also, I don't have the link offhand, but I recently came across a write-up on using the ArcMap Label Engine to disperse points. It may have been a Cartotalk or ESRI Forums thread. I'll see if I can dig it up again for you.

Brody.
__________________

Cartisan Maps
www.cartisan.com
202-355-5001
__________________

#8
benbakelaar

benbakelaar

    Ultimate Contributor

  • Associate Admin
  • PipPipPipPipPipPip
  • 658 posts
  • Gender:Male
  • Location:North Brunswick, NJ
  • Interests:maps, information, technology, scripting, computers
  • United States

Thanks guys! That was exactly what I needed. Glad to have found it, but wish it was a standard part of the ArcGIS suite...

#9
majose

majose

    Newbie

  • New Member
  • Pip
  • 1 posts
  • Chile

About Paul Hardy said, I saw the edndoc, but in How to use> "Register PointDispersalVB.dll and double-click the PointDispersalVB.reg file to register to component categories". Where can I get these files to enable the "Custom renderers" option??

In advance thank you very much,

MJ.

#10
Matthew Hampton

Matthew Hampton

    Hall of Fame

  • Moderator
  • PipPipPipPipPipPipPip
  • 1,295 posts
  • Gender:Male
  • Location:Portland, Oregon
  • Interests:Playing in the mountains and rivers.
  • United States

Hi MJ,

I am not too sure I have a specific answer to your question - but there has been a bit of development at ESRI with respect to dispersing coincident markers since this post was started.

I would ask such a technical question such as this to the ESRI forums, but here are a few links that might help. They are from ESRI's Mapping Center. One is an blog post titled How to scatter stacked or clustered marker symbols for point features and one is a post I made called Using the Disperse Markers tool to show community amenities.

Good luck.

co-cartographic creator of boringmaps.com


#11
frax

frax

    Hall of Fame

  • Associate Admin
  • PipPipPipPipPipPipPip
  • 2,299 posts
  • Gender:Male
  • Location:Stockholm, Sweden
  • Interests:music, hiking, friends, nature, photography, traveling. and maps!
  • Sweden

I just did this - and I used the disperse markers toolbox for cartographic representations, worked without a problem! Here is another solution, but it requires that they have exactly the same coordinates, which you can first get with collect events, if you don't have it already. http://arcscripts.es....asp?dbid=15365
Hugo Ahlenius
Nordpil - custom maps and GIS
http://nordpil.com/
Twitter

#12
Matthew Hampton

Matthew Hampton

    Hall of Fame

  • Moderator
  • PipPipPipPipPipPipPip
  • 1,295 posts
  • Gender:Male
  • Location:Portland, Oregon
  • Interests:Playing in the mountains and rivers.
  • United States

Disperse Markers is one of my favorite cartographic tools in ArcGIS.

We just received a bunch (50,000 records) of accident data for our region that I am working on mapping. I'll post some in a bit, but here is a pic of a map I made a bit ago using this method. It involved thousands of overlapping point features (taxlot centroids) depicting different urban amenities for a revitalization discussion.

Attached File  UrbanAmenities_MC2.jpg   182.27KB   67 downloads

co-cartographic creator of boringmaps.com


#13
Hans van der Maarel

Hans van der Maarel

    CartoTalk Editor-in-Chief

  • Admin
  • PipPipPipPipPipPipPip
  • 3,856 posts
  • Gender:Male
  • Location:The Netherlands
  • Interests:Cartography, GIS, history, popular science, music.
  • Netherlands

Disperse Markers is one of my favorite cartographic tools in ArcGIS.

We just received a bunch (50,000 records) of accident data for our region that I am working on mapping. I'll post some in a bit, but here is a pic of a map I made a bit ago using this method. It involved thousands of overlapping point features (taxlot centroids) depicting different urban amenities for a revitalization discussion.

Attached File  UrbanAmenities_MC2.jpg   182.27KB   67 downloads


Very cool effect, Matthew!
Hans van der Maarel - Cartotalk Editor
Red Geographics
Email: hans@redgeographics.com / Twitter: @redgeographics

#14
Matthew Hampton

Matthew Hampton

    Hall of Fame

  • Moderator
  • PipPipPipPipPipPipPip
  • 1,295 posts
  • Gender:Male
  • Location:Portland, Oregon
  • Interests:Playing in the mountains and rivers.
  • United States

It wasn't me, it was the computer.

I was just pushing buttons... B)

co-cartographic creator of boringmaps.com


#15
Charles Syrett

Charles Syrett

    Ultimate Contributor

  • Validated Member
  • PipPipPipPipPipPip
  • 537 posts
  • Canada

It wasn't me, it was the computer.

I was just pushing buttons... B)


Couldn't resist. (see Calvin cartoon) :rolleyes:

Charles Syrett
Map Graphics
http://www.mapgraphics.com

Attached Files






0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users

-->