The only way to get from Lagos to Cadiz is to take the bus to Seville and then another one to Cadiz.
There are currently four buses a day between Lagos and Seville Plaza das Armas.
See this page for more details:
http://thomasallen.home.sapo.pt/travel/001.htm
Transports Generals Gomes operate buses every couple of hours from Seville Plaza das Armas to Cadiz with a transit time of 1:45 minutes.
Website here:
http://www.tgcomes.es/
If you get one of the departures from Lagos to Seville at 0530, 0730, 1230 you should be easily able to connect with a bus to Cadiz.