Fysiografia
Vistulan joki koostuu kolmesta pääjaksosta, joita rajaavat San- ja Narew-joet, kaksi merkittävintä sivujokea. Yläjuoksu ulottuu lähteestä siihen kohtaan, jossa San yhtyy emojokeensa Sandomierzin lähellä; sen pituus on noin 240 mailia. Keskijuoksu, joka ulottuu San-joen suulta Narew-joen suulle Varsovan luoteispuolella, on noin 170 mailia pitkä. Lopuksi Itämereen ulottuva alajuoksu on 240 meripeninkulmaa Narewin suulta Gdańskinlahteen laskevan suiston suulle.
Yläjuoksullaan Veiksel on vuoristovirta, jonka kaltevuus on jyrkkä, jopa 5 prosenttia. Sen tärkeimmät lähteet ovat Czarna Wisełka ja Biała Wisełka, kaksi puroa, jotka yhtyvät muodostaen Mała Wisłan (”Pieni Veiksel”), joka sitten virtaa pohjoiseen. Noin 25 kilometrin päässä joen kaltevuus laskee yhtäkkiä noin 0,04 prosenttiin; siitä itään käännyttyään Veiksel laskee Goczałkowice-järveen, joka on vuonna 1955 rakennettu keinotekoinen varastoallas. Poistuessaan järvestä Veiksel muuttuu alankojoen kaltaiseksi, ja sen kaltevuus laskee 0,03-0,02 prosenttiin keskijuoksulla ja 0,02-0,002 prosenttiin loppuvaiheessa. 65 meripeninkulman päässä lähteestä Veikseliin yhtyy Przemsza-joki, joka on vasemmanpuoleinen sivujoki, jonka jälkeen se on 585 meripeninkulman ajan purjehduskelpoinen. Sen jälkeen kun Soła ja Skawa – kaksi oikeanpuoleista sivujokea – yhtyvät jokeen, Veiksel pakottaa tiensä läpi kukkuloiden muodostaman aukon juuri ennen Krakovan kaupunkia. Tälle osuudelle tehdyt kanavan parannukset ovat vieneet Veikseliltä suuren osan sen alkuperäisestä luonteesta: jokeen on rakennettu useita ylivuotoportaita, jotka ovat luoneet 300 tonnin proomuille kulkukelpoisen kanavan. Kuljettuaan Krakovan läpi Veiksel kääntyy itään ja myöhemmin koilliseen ja ylittää laajan Sandomierzin altaan, jossa laaksoon laskevat peräkkäin vasemmanpuoleiset sivujoet Szreniawa, Nida, Czarna ja Koprzywianka ja oikealta Raba, Dunajec, Wisłoka ja San.
San-joen tulovirtaama merkitsee Veiksel-joen keskijuoksun alkua, joka sitten kääntyy pohjoiseen ja rikkoo toisen aukon ylänköalueen läpi. Keskijuoksunsa aikana Veikseliin laskevat vasemmalta Radomka ja Pilica ja oikealta Wieprz, Wilga, Świder ja Narew. Narew-joen yhtymäkohdan alapuolella, josta joen alajuoksu alkaa, Veiksel kääntyy ensin länteen ja sen jälkeen, kun se on saanut vasemmanpuoleisen sivujokensa Bzuran, luoteeseen; tällä välin oikealta jokeen yhtyvät Skrwa ja Drwęca. Osassa laaksoa, Wieprz-joen suulta Toruńiin, vallitsee Veikselin luonnollinen, kesyttämätön luonne.
Täällä joki virtaa 2 000-4 000 jalkaa leveässä uomassa, jossa ei ole käytännöllisesti katsoen lainkaan hallintarakenteita; paikoin laakso on jopa kuudesta yhdeksään mailia leveä, ja rannat ovat usein 200-330 jalkaa korkeita. Keväisin, kun jääpeite hajoaa ja ajautuu alavirtaan, voi muodostua vaarallisia jääpatoja, jotka aiheuttavat tulvia ympäröiville alueille ja tuhoavat usein penkereitä ja siltoja. Włoclawekiin vuonna 1968 rakennettu ylivuotoporras aloitti parannusten sarjan, joka jatkui 1980-luvulle asti.
Toruńista Itämereen tuloon asti Veikselistä on tehty täysin parannettu vesiväylä. 1800-luvulla rakennettu Bydgoszczin kanava, joka seuraa muinaista jäätikkölaaksoa, yhdistää Veikselin Oderiin, Puolan toiseksi suurimpaan jokeen. Myös Bydgoszczin lähellä Veiksel, joka on saanut vasemmanpuoleisen sivujokensa Brda-joen, kääntyy koilliseen kolmannella aukkojaksollaan, joka on leikattu Pommerin ylängön läpi. Grudziądzin yläpuolella joki kääntyy lopulta pohjoiseen lähestyäkseen Itämerta. Saatuaan kolme sivujokea – Osan oikealta puolelta sekä Wdan ja Wierzycan vasemmalta puolelta – Veiksel saapuu Żuławy Wiślanen suistoalueelle, joka on tunnettu erinomaisen hedelmällisestä maaperästään. Żuławy on metsätön tasanko, joka on osittain merenpinnan alapuolella ja jota halkovat Veiksel ja sen sivuhaarat sekä lukuisat kanavat ja ojat. Osa paikallisista penkereistä ja padoista on peräisin 1200-luvulta. Toisen maailmansodan aikana suuri osa Żuławysta joutui tulvan alle, mutta sodan jälkeisinä vuosina tehtiin parannuksia.
Viime aikoina Veiksel ylitti suistonsa ja laski mereen kahta tai useampaa sivukanavaa pitkin, erityisesti Nogat-jokea, joka laski Veikselin laguuniin, ja Leniwka-jokea (nykyisin Martwa Wisła), joka seurasi varsinaista Veikselin kanaalia Gdańskin lahdelle. Parannukset, joiden perimmäisenä tavoitteena oli hallita Veikselin purkautumista mereen ja tehdä koko suistoalueesta taloudellisesti tuottava, aloitettiin 1800-luvun lopulla: ensin Świbnon lähelle kaivettiin leikkaus avomerelle tulvaveden poisjohtamisen helpottamiseksi ja joen mukana kulkeutuvan roskan ja jään poistamiseksi; myöhemmin kaikki sivuvesistöt erotettiin toisistaan suluilla, jolloin ne muuttuivat purjehduskelpoisiksi ja virtaukset saatiin hallituiksi; Świbnon leikkausta pidennettiin avomereen pidentämällä säännöstelypatoja. Viimeksi mainitulla muutoksella pyrittiin estämään Veikselin vuosittain kuljettaman yli kahden miljoonan tonnin sedimentin kerääntyminen joen suulle.