[postgis-users] Dot Density idea

Norman Vine nhv at cape.com
Thu May 6 14:50:29 PDT 2010


When I have done this before I usually triangulate the polygon
first  then use each triangles area to normalize the number of 
points randomly inserted into each triangle

On May 6, 2010, at 1:51 PM, David William Bitner wrote:

> If it was the overall density of the dots that mattered and not as much the exact number of dots, a representative table could be made with a "random yet even" set of dots covering a certain area. To apply to a polygon, you could then Scale the data to the appropriate density and translate/compute the intersection to apply to a given polygon.
> 
> On Thu, May 6, 2010 at 12:50 PM, Martin Davis <mbdavis at refractions.net> wrote:
> Did your algorithm work with irregular polgon extents?
> 
> 
> Jan Hartmann wrote:
> I did this long ago. Regular points won't work, you'll get all kinds of moire patterns. I just computed random x and y values from the origin of the grid cell within the x- and y grid-size. Can't remember having any problems with overlapping points.
> 
> Jan
> 
> On 05/06/10 19:35, Paul Ramsey wrote:
> Even-yet-random :) nice requirement. How about just starting with a
> regular grid and then perturbing the elements randomly with a radius
> of a cell size? You can use the area of the polygon and number of
> needed points to calculate the appropriate cell size and go from
> there.
> 
> P
> 
> On Thu, May 6, 2010 at 10:28 AM, Martin Davis<mbdavis at refractions.net>  wrote:
>  
> Good point about the need for even distribution of the points. That seems
> like a whole lot harder to code than simply randomly placing points in a
> polygon.  Does anyone have any pointers to algorithms for producing this
> effect?
> 
> George Silva wrote:
>    
> The really big problem with dot density is that dots can overlap
> themselves,
> masking the real number, so if anything will be developed in this area,
> the
> points should be
> 
> A) evenly distributed
> or
> B) randomly distributed, but with some sort of "colision" tests, so there
> is
> no or little overlap.
> 
> This is a interesting idea, especially if we could make a materialized
> view
> with those points, which could be added to GIS software for presentation.
> 
> George
> 
> On Thu, May 6, 2010 at 1:53 PM, Sufficool, Stanley<
> ssufficool at rov.sbcounty.gov>  wrote:
> 
> 
>      
> Looks nasty, but it might work:
> 
> select
> st_line_interpolate_point(
>       st_intersection(
>               the_geom,
>               st_makeline(
>                       st_pointn(st_exteriorring(the_geom), (rand1.rand *
> st_npoints(st_exteriorring(the_geom)))::int),
>                       st_pointn(st_exteriorring(the_geom), (rand2.rand *
> st_npoints(st_exteriorring(the_geom)))::int)
>               )
>       )
>       ,rand3.rand
> )
> from insert_your_table_name_here,
> (select random() as rand, generate_series(1,1000) as point_number) as
> rand1
> JOIN (select random() as rand, generate_series(1,1000) as point_number)
> as
> rand2
>       ON rand1.point_number = rand2.point_number
> JOIN (select random() as rand, generate_series(1,1000) as point_number)
> as
> rand3
>       ON rand2.point_number = rand3.point_number
> WHERE st_geometrytype(
>       st_intersection(
>               the_geom,
>               st_makeline(
>                       st_pointn(st_exteriorring(the_geom), (rand1.rand *
> st_npoints(st_exteriorring(the_geom)))::int),
>                       st_pointn(st_exteriorring(the_geom), (rand2.rand *
> st_npoints(st_exteriorring(the_geom)))::int)
>               )
>       )
> ) = 'ST_LineString'
> AND oid = 5030 /* Enter your own OID here */
> limit 100
> 
> 
> 
> 
>        
> -----Original Message-----
> From: postgis-users-bounces at postgis.refractions.net
> [mailto:postgis-users-bounces at postgis.refractions.net] On
> Behalf Of Martin Davis
> Sent: Thursday, May 06, 2010 8:56 AM
> To: John Abraham; postgis-users at postgis.refractions.net; Martin Davis
> Subject: Re: [postgis-users] Dot Density idea
> 
> 
> I was thinking the same thing!
> 
> strk wrote:
> 
>          
> ST_RandomPoinsOnSurface(geometry, numpoints) would be an interesting
> function indeed. Sounds like a good job for GEOS/JTS.
> 
> --strk;
> 
> On Mon, May 03, 2010 at 10:49:32PM -0600, John Abraham wrote:
> 
> 
>            
> One of the things I miss about using ESRI's GIS is the
> 
>               
> ability to do
> 
>          
> dot-density maps.  Within a polygon, the number of dots is
> 
>               
> proportional to a value, and the dots are randomly placed.  I
> find it useful to be able to present several data values at
> once (e.g. blue dots for population, red dots for employment).
> 
>          
> I also find that it is a more intuitive way of scaling for
> 
>               
> zone size
> 
>          
> than dividing the value by the area of the zone.  That is,
> 
>               
> the count
> 
>          
> of the dots represents the actual number, but the density
> 
>               
> of the dots
> 
>          
> represents the density of the number.  So I don't have to decide
> whether to divide the value by the area of the polygon to plot
> density: both the absolute number and the density are
> 
>               
> easily visible.
> 
>          
> Since my open-source GIS viewing systems (mostly QGIS and
> 
>               
> Mapserver)
> 
>          
> won't plot dot-density, I've done without.
> 
> But today I realized that I can build these on the server
> 
>               
> instead.  I
> 
>          
> can generate random points within the bounding-box of the polygon,
> throwing out those that aren't contained within the polygon,
> repeating until I have enough.  Then I can save these points as a
> separate layer, and display this layer using almost any desktop or
> web based viewer!
> 
> Has anyone done this?  Can I do it in SQL or do I need to write
> something in PL/pgsql?
> 
> -- 
> John Abraham
> 
> PS I just bought the Postgis In Action book; enjoying it so far.
> _______________________________________________
> postgis-users mailing list postgis-users at postgis.refractions.net
> http://postgis.refractions.net/mailman/listinfo/postgis-users
> 
> 
>               
> 
>             
> -- 
> Martin Davis
> Senior Technical Architect
> Refractions Research, Inc.
> (250) 383-3022
> 
> _______________________________________________
> postgis-users mailing list
> postgis-users at postgis.refractions.net
> http://postgis.refractions.net/mailman/listinfo/postgis-users
> 
> 
>           
> _______________________________________________
> postgis-users mailing list
> postgis-users at postgis.refractions.net
> http://postgis.refractions.net/mailman/listinfo/postgis-users
> 
> 
>         
> 
> 
>  ------------------------------------------------------------------------ 
> 
> _______________________________________________
> postgis-users mailing list
> postgis-users at postgis.refractions.net
> http://postgis.refractions.net/mailman/listinfo/postgis-users
> 
>       
> -- 
> Martin Davis
> Senior Technical Architect
> Refractions Research, Inc.
> (250) 383-3022
> 
> _______________________________________________
> postgis-users mailing list
> postgis-users at postgis.refractions.net
> http://postgis.refractions.net/mailman/listinfo/postgis-users
> 
>     
> _______________________________________________
> postgis-users mailing list
> postgis-users at postgis.refractions.net
> http://postgis.refractions.net/mailman/listinfo/postgis-users
>   
> _______________________________________________
> postgis-users mailing list
> postgis-users at postgis.refractions.net
> http://postgis.refractions.net/mailman/listinfo/postgis-users
> 
> 
> -- 
> Martin Davis
> Senior Technical Architect
> Refractions Research, Inc.
> (250) 383-3022
> 
> _______________________________________________
> postgis-users mailing list
> postgis-users at postgis.refractions.net
> http://postgis.refractions.net/mailman/listinfo/postgis-users
> 
> 
> 
> -- 
> ************************************
> David William Bitner
> _______________________________________________
> postgis-users mailing list
> postgis-users at postgis.refractions.net
> http://postgis.refractions.net/mailman/listinfo/postgis-users

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/postgis-users/attachments/20100506/3fb5a17b/attachment.html>


More information about the postgis-users mailing list