[Qgis-user] Atlas generation - help please

Alexandre Neto senhor.neto at gmail.com
Wed Sep 3 06:51:11 PDT 2014


Hello all,

On Mon, Sep 1, 2014 at 9:52 PM, Nyall Dawson <nyall.dawson at gmail.com> wrote:

> I'm 99% certain that what you are after is possible in QGIS 2.5 (the
> unreleased development version of 2.6). But do you mind posting this
> question over at gis.stackexchange.com with some screenshots of your data
> format so I can be certain? I'll send through a step by step answer over at
> stack exchange with screenshots for you.
>
> Cheers,
> Nyall
>

Nyall, I think I will post the question myself, as I'm curious about how is
the correct way to do this in QGIS 2.5 :-P

On Tue, Sep 2, 2014 at 12:30 PM, Sergio Vignali <vignalisergio30 at gmail.com>
 wrote:

> Hi Alexandre,
> you say that you know a way to do that with postgis,
> please could you explain that?
>

Sergio, not really, it would still need qgis help. Postgis would only
facilite things (see below).

On Wed, Sep 3, 2014 at 1:18 PM, Thomas Colley <
t.colley at neath-porttalbot.gov.uk> wrote:

> How about creating a polygon layer with a bounding polygon for all points
> per species? The polygon features would have the species name as an
> attribute.
>
>
>
> You can then use this polygon layer for your atlas and use rule based
> styling to filter the points based on the species name attribute of the
> atlas feature.
>

Like I said before I think this is not possible since you cannot access the
atlas feature atributes from the expression builder, but the idea was that
one. Using postgis would just make the task of creating the polygon layer
for each specie easier.

Meanwhile, talking with Giovanni Manghi, he came up whit a workaround idea
that can actually work quite nice.

One thing you can get from the atlas feature is the feature id (that
represents his position on the table). So instead of using the specie name
attribute, one could use this ID.

Having a layer with a bounding polygon for each specie, with a column with
the specie name, I would do the following:

- Using field calculator, add a new column (boundary_id) in the boundary
polygons layer (the one that will be used in atlas) with it's ID using $id;
- In the data layer (the one with all species presences) join the boundary
polygons layer using the specie name;
- Now use the rulebased symbology on the data layer to filter only the
points where "boundary_id" = $atlasfeatureid

Runing atlas generation with the boundary polygons layer, should do what is
asked.

The caveat of this procedure is that any change on the dataset (for example
adding a new specie, or removing all presences from another) would require
changes in the  boundary feature. This can originate id changes, and to
make sure all spicies maps are printed , one should repeat all the steps
described before. But, that's much better than doing the map on by one!

BTW, I don't think any other GIS software allow this kind of interation and
filtering. Can anyone comment on that?

Best regards,

Alexandre Neto
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/qgis-user/attachments/20140903/e5422ae7/attachment.html>


More information about the Qgis-user mailing list