[Qgis-user] How calculate sequential values based on spatial pattern

Bernd Vogelgesang bernd.vogelgesang at gmx.de
Thu May 2 07:13:45 PDT 2019


Hi,

I think you touch a quiet common problem, and I decided to find a
solution for the last hours (my dog is already very unpatient), cause I
need this also once in a while. All searches for quick solutions ended
without good results.

For the python-freaks, I think this would be a piece of cake, but so far
obviously no one came up with a one-fits-all solution.

So, here we go manually:

First, you have to decide how many "lines" of numbers you want to
generate to get a reasonable result.

In the tool box use "Create" Grid and choose a line grid with a vertical
spacing that will generate to desired amount of lines. for horizontal
spacing choose a big distance so only few vertical lines are generated
(will be deleted anyway). For the grid extend, choose your point layer.

(Alternative way: Draw one line in your first "row" of points and the
use "Array of offset (parallel) lines" from the tool box)

Having that grid, delete the vertical lines, so that you only keep the
horizontal lines that now evenly distribute over your points.

Now, in the tool box, use "Snap points to lines" from the SAGA
functions. This produce a new layer with points, that now sit on those
lines (choose a good search radius!)

To this result layer, add columns for x and y-values. Do this manually
in the field calculator or in the tool box with "Add ccordinates to points"

Now, you unfortunately need a plugin (could not find a working function
in the toolbox for this), cause you will have to reorder your layer by
those two coordinate values, first by y decending (upmost first), and
then x (ascending)

The plugin is called "Sort and Number": 1st field: y (invert), 2nd field
x. The plugin will add a new column "order" to you points.

Now, to get the numbering to your oringinal points, use "join attributes
by field value" to join your original points with the new ordered
snapped points. (Take care that your original points have a unique id
beforehand!)

The resulting layer is now your point layer which can be labeled by the
"order" column.

If you would post a question on this on gis.stackexchange.com , I can
give there an answer with some screenshots as well.

Cheers,

Bernd

Am 01.05.19 um 23:38 schrieb Apoyo Carbono:
> Hi!
> I need your help. I need to Create a numbers sequentially in a "Points
> shapefile"  with a spacial pattern.
> For example, the point number 1 start northwestern and the next  numbers
> points will be order from west to east. For the next row (to South) going
> from west to east too.
> And so on, the values points increase to the south. Therefore the last
> point will be in the southeast.
> For now I'm doing manual but it is around 1,000 points!
>
> I hope that you understand my situation. Can you help me? I could send you
> the shapefile with an example better explained
>
> Thanks,
>
> Ana
>
> _______________________________________________
> Qgis-user mailing list
> Qgis-user at lists.osgeo.org
> List info: https://lists.osgeo.org/mailman/listinfo/qgis-user
> Unsubscribe: https://lists.osgeo.org/mailman/listinfo/qgis-user
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/qgis-user/attachments/20190502/4ddeec9b/attachment.html>


More information about the Qgis-user mailing list