Technically if you have a Pokemon with suction cups in the front of your party you have a guaranteed chance of encountering a Pokemon. My favorite spot is azure bay personally I don't even need a suction cups cause I go in a spot hidden in the rocks. So basically you can go anywhere and always get a hook as long as you have a Pokemon like inkay with suction cups in the front of your party. If you don't find a spot that is sourounded by something closing in like the example I used before rocks in azure bay you will have a better chance of not getting a hook at all. Check my first source to see all the Pokemon found in the bay and what rod. Check the second one for all routes that have a fishing spot. It even includes the Pokemon and which rod to use
I hope this helped!!!