I have several dozen points plotted across the UK. Each point represents a facility that serves local people. To estimate the catchment areas of each facility I created Voronoi polygons around them, and clipped the polygons to the UK borders (using a UK shapefile). I then coloured each polygon according to an attribute of the point data.
A cropped part of the map is here: (Wales and Devon/Cornwall)
Is there any way to make the Voronoi respect the natural borders of the UK (i.e. limit them to my shapefile during Voronoi creation)? The white on my map is the sea, and some polygons have crossed the Bristol Channel. This is implausible for a catchment area.
Is this possible, or is there any alternative? I have used QGIS so far, but am open to any option, code or GUI, preferably free.
Edit: There are some questions Constructing a Voronoi diagram using a complicated travel time metric and Is there a described GIS method for creating catchment areas based on nearest driving distance? that talk about building catchment areas from driving times. That is a possibility that I am considering if this is not possible, but a Voronoi algorithm that respects borders would be simpler.