Hi John
There is a way to do this without applying criteria, however you are quite right that setting up a toplist on the horizontal axis is not possible using the built-in toplist tool in the TARGIT Client.
As I understand you your initial crosstab might look something like this:

Now I will add a calculated row with totals of each column:

And then 3 more calculations - each picking out the max value and transfering the rest of the values discarding this max value.
Top1:

Finds the max value in the total row (c1) and transfers this value as -1000000000 and the rest of the values unchanged
Top2:

Finds the max value of the transfered values (max will be the second highest value since we changed the original max value previously
Top3:

Repeats the trick...
Finally a visibility agent with this condition:

and this action:
...Which basically means hide everything but top 3.
Will get you this linechart:

You will also need to go into properties - visibilty and hide your calculations.
Hope it makes sense.