I believe your data is measured on a Likert Scale which might give you some leads.
I think the simplest way to approach this is that you could have already made graphs to explore the data before you clustered it, and the output of
cutree (cluster number for each questionnairs) can be used to enhance these graphs.
For example, in the
lattice package, using
xyplot, you can specify things like (making up data, perhaps you have it, perhaps you don't):
xyplot (study.hours ~ age | cutree (h), data=surv)
xyplot (year ~ major | cutree (h), data=surv, jitter.x=TRUE, jitter.y=TRUE)
xyplot (year ~ major, groups=cutree (h), data=surv, jitter.x=TRUE, jitter.y=TRUE)
xyplot (happy ~ gym, groups=cutree (h), data=surv, jitter.x=TRUE, jitter.y=TRUE)
Etc. (In lattice, the vertical bar splits the graph up into multiple sub-graphs, while the groups= color-codes the points within the same graph.) The
jitteris because I envision gym and happy as being answers to survey questions that are encoded on an integer scale of 1-4, and without jitter, you'd just get 16 places in the graph where points are all overplotted. Look at
?panel.xyplot to see variables like
amount that allow you to jitter more or less.
You might also want to investigate the
kohonen package, which implements SOM's, which are ways to get 2-D visualizations of multi-dimensional data. Might be better for your purposes than