I’m writing my masters thesis and came across a problem I haven’t been able to find an answer to.

I’m working with QGIS and a Spatial Line Shapefile that represents all streets in Tibet, taken from Open Street Map. What I want to do is create a (raster?) file of Tibet from it with a resolution of, for example 1x1 m, that represents the distance of that 1x1 m area to the closest street. My endgoal is to calculate a correlation of the distance to the closest road with NDVI data that indicates the health of vegetation.

I was thinking about applying buffers to the lines but then I would have to have the buffers clip so that the border is at the exactle middle distance between the lines and it wouldn't show the distance along the buffer as far as I know.

Unfortunately I am at a loss of how to do this. I am also working with R. I don't know if it might be more useful for my problem.

  • 2
    In ArcGis there is a tool called euclidean distance with raster output. On a different note: do you have disk big enough to store 1m*1m raster for Tibet? – FelixIP Dec 23 '18 at 20:43

I think you can do this with the Proximity algorithm in the processing toolbox. You will first need to convert your roads layer into a raster using the rasterize process.


What you want can also be done in GRASS GIS with the module r.grow.distance. And yes, You will need to rasterize the roads line vector.

Also, as FelixIP pointed out, I really doubt that you will be able to work with the whole country at 1 m resolution. The area of Tibet is about 1.2 x 10^6 sq kilometers. So 1.2 x 10^12 sq meters. For float values (4 bytes per pixel) a geotiff raster would become 5 x 10^12 bytes = 5000 Gigabytes. Not really practical!

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.