7

I have a polygon layer and a point layer (with coordinates for each point). The polygon layer got created using the MMQGIS plugin (Hexagonal Polygons). I want to select all the points inside each polygon.

I worked with ArcGIS before but I want to change to open source. Furthermore, I want to approach that through a Python script since I want to analyse the extracted data. I have QGIS 2.8 installed. I am a bit overwhelmed by all the GIS libraries there are for Python.

Can I approach that sort of selection with a GIS library that is already installed with QGIS? If so, could anyone pin point me into the right direction?

9

Assuming you want to run your script within QGIS (from a script file or Python console), you can use the following:

import processing

processing.runalg("qgis:selectbylocation", INPUT, INTERSECT, METHOD, OUTPUT)

Here is the help description provided by the Python console which defines each parameter:

processing.alghelp("qgis:selectbylocation")
ALGORITHM: Select by location
    INPUT <ParameterVector>
    INTERSECT <ParameterVector>
    METHOD <ParameterSelection>
    OUTPUT <OutputVector>

METHOD(Modify current selection by)
    0 - creating new selection
    1 - adding to current selection
    2 - removing from current selection

To create a script entirely from scratch which doesn't call on QGIS functions, the following links might help in developing similar functionality:


EDIT:

There are a couple of posts which might be of some use with writing scripts outside QGIS for Mac:

  • Hello Joseph. Thanks for your reply. I want to use QGis functions! But I think I do not want to make that in the QGis console but call a script from the console of my computer (OS X 10.10). Which library are you using there? Or which library is QGis providing and how can I access that API? Is there anything to read on that? – Stophface Apr 2 '15 at 13:23
  • No problem Stophface! I've edited my post to include links which describe how to use scripts outside QGIS for Mac. I use Windows :) In terms of scripting, I don't think there's much difference, the biggest being setting the PATHS I think (I'm also a beginner!). – Joseph Apr 2 '15 at 13:38
  • Yes, that path setting is something which wont work over here at all. But once thats fixed, it will save a lot of work later on :) Is there a documentation on the library QGis is using? That way I do not have to come back here but just look things there up. Is it PyQGis? – Stophface Apr 2 '15 at 13:40
  • Yes, it uses PyQGIS :) – Joseph Apr 2 '15 at 13:49
  • Most welcome buddy! – Joseph Apr 2 '15 at 14:13

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.