You don't explain your actual display needs, so I will just give some general advice -
First, to speed things up - you can read the All channel, which would return all the channels in the I/O module in an array.
Second, as you mentioned, if you simply index the reading out of the for loop, you will get a 2D array, which you can display.
If you want a different number of channels for each display, you can bundle the 1D array into a cluster (just use a bundle node) and wire that cluster out of the loop. You will get a 1D array of clusters which have a 1D array each.
If you want the readings to be in different places in your screen, then what you're doing is basically it. You could make it cleverer, but it would probably make it too complicated for you.
As for the enum, the numeric palette has a conversion subpalette which you can use to convert the enum to a U16 or U32. Another option would be to typecast it which should also work.
___________________
Try to take over the world!