I am trying to check if a POI (Point Of Interest) is within 2 mile distance (crow's flight) of the US Interstate Highways. I have to do this check for 2000+ POIs. Since I am not very familiar with GIS, I did some reading and searching, but could not find a well defined and feasible methodology.

So far I have the following:

What would be the best way to tackle this problem? I am proficient in Python, and I have to use opensource / free software (I don't think I can use ArcGIS).

A few ideas I came up with:

  • Brute force approach: converting the shapefile to points with a tool and computing the distance for each POI and the points from the shapefile, and taking the minimum distance, then checking if the result is less than 2 miles or not. This would be probably be very resource intensive.
  • Converting the shapefile into line segments with a tool and similar to the approach above, computing the minimum distance between each POI and the line segments. Again, I think this also would be resource intensive.
  • Using an opensource GIS software such as QGIS (I am not familiar with it yet), and hope some kind of plug in exists that does the described proximity analysis.
  • Welcome to gis.stackexchange! Please note that a good question on this site is expected to show some degree of research on your part, i.e. what you have tried and - if applicable - code so far. For more info, you can check our faq.
    – underdark
    Commented Jan 31, 2017 at 17:24
  • Thank you. I will edit the post to give more information.
    – marillion
    Commented Jan 31, 2017 at 17:31
  • 1
    You are on that right track. Here is documentation for QGIS's Buffer capability which will prove useful. docs.qgis.org/2.6/en/docs/gentle_gis_introduction/…
    – cl3
    Commented Jan 31, 2017 at 17:50
  • As it stands I think your question is too broad because it states a range of ideas and possible solutions rather than examining one in detail and telling us what you have tried and where you are stuck with that.
    – PolyGeo
    Commented Feb 1, 2017 at 20:52

1 Answer 1


It's pretty straightforward in QGIS. First draw a buffer around the highways:

Vector to Geoprocessing Tools to Buffer

Set the buffer distance to 2 miles or whatever distance it corresponds to in map units (whatever the coordinates are showing as):

buffer options

Now make the .csv a shapefile, and select points from the shapefile that are within the buffer using Select by Location:

Vector to Research Tools to Select By Location

You should then be able to create a layer from that.

Not the answer you're looking for? Browse other questions tagged or ask your own question.