Update#1: Thanks, Micha, I have followed your instruction and successfully use the modules in GRASS.
I use r.watershed to get the basin raster and the drainage line:
and I use r.water.outlet to get the watershed of one outlet:
I got the whole basin area of the green outlet point, but all I want is the little part of the original basin area, like this:part B is what I want
This schematic photo shows the idea of what I want:
Can I achieve this goal using r.water.outlet or other modules in GRASS? Or all I can do is using the intersect tool in Geoprocessing tools in QGIS?
As title, I want to find the watershed area, but using QGIS.
I have following files to work with:
- stream network shapefile(polyline)
- point shapefile clipped from the polyline shapefile
- a whole island(the stream is inside the island) DEM(I got 2 types:.lan & .tiff)
I want to find the total watershed area located upstream of every point in the network, here's the schematic diagram:
the green, red, and yellow line enclose the watershed of each point(here I only take 3 points as the example), and I want to calculate their area.
I already got the DEM file, and I must cut the region that contains the stream off, should I polygonize it first?Can I directly use this form(.lan or .tiff) to work with GRASS?
Answer
You will definitely need an elevation raster (DEM) to do what you want. With the DEM you can use two GRASS modules to get individual drainage areas for points along the river network as follows: First calculate a flow direction grid from the DEM with r.watershed:
r.watershed elev=DEM thresh= drain=flow_dir_grid
See the r.watershed manual for more details Next loop thru the X-Y values of the points along the river network to calculate each watershed with the r.water.outlet module.
r.water.outlet drain=flow_dir_grid basin=basin1 easting=X1 northing=Y1
Details in the r.water.outlet manu page
For doing the loop, you might be able to get some ideas in this post
No comments:
Post a Comment