I am having the same issue when I use my own streams which have braids and loops. If I let ArcHydro define the streams for me then it works just fine. The jpg that you attached doesn't show any braided streams, but I am wondering if your data did contain braids. I think the Stream Order cannot handle braided networks. Can anyone confirm this?
StreamOrder uses flow direction as input, i.e. flow can only go one way so braided network are not supported.
If you have a braided network you can use the Assign River Order tool from the Arc Hydro toolbox or Arc Hydro Python toolbox. It is located in the Attribute tool toolset. This tool takes as optional input a flow split table that allows the tool to handle braids.
Coming in with your own streams feature class you will need to run the following tools:
· Assign HydroID
· Generate From/To Node for Lines (store connectivity)
· Find NextDownstream Line (to create the flow split table and NextDownIDs)
· Assign River Order.
Also the field OmitUp (0/1) if present is used to reset the order to 1 in a secondary braid segment.
Christine Dartiguenave
Esri Water Resources Team
Great! That works for the most part. I am using HND streams and am having trouble with all of the streams being assigned a river order. I am attaching a gdb with a sample. Here is also a clip of the message that I receive saying that 44 of the segments did not receive a stream order. If you could direct me to a solution I would greatly appreciate it.
Your problem is that you have a loop in your streams. The tool cannot figure out loops.
Look at your features with HydroID 1603 and 1699. You need to flip one of the segments, then rerun Generate From Node/To Node, Find Next Downstream Line and Assign River Order.
Chirstine
Great! Thanks for the help.