How to plot logistic models with many categorical variables? How to plot logistic models with many categorical variables?
Specifically,
I'm creating the following kind of model (more variables are still to be added):
glm(cancer ~ trt + factor(exposure) + skin + 
gender + factor(age), family = binomial, data = dta)

which is about modelling how different variables affect the risk of getting skin cancer.
One can see that it would be interesting to plot along both age (range: integers [28, 84]) and exposure (range: integers [1, 21]), however plotting against two variables doesn't seem to be possible in a typical y-x setting so plotting against two variables would either be a 3D plot or is there perhaps some other way?
 A: Visualizing a logistic model with multiple continuous variables is considerably more complicated, but it becomes much simpler if all variables are categorical.  When the X-variables are categorical, logistic regression is just fitting the proportion of 'successes' within each combination of categories.  The standard way to plot proportions within a series of categories is to use a spineplot or a mosaicplot (cf., here).  
If you have a larger number of variables, you could form a plot matrix of spineplots.  The issue with plot matrices is that each is a marginal projection (cf., here).  Another possibility is to form conditioning plots.  I don't have access to your cancer dta dataset; below is a quick illustration with the Titanic dataset.  If you wanted these for publication, you would want to do some extra work to make them 'pretty' (clean up the axes, etc.), but this should give you the idea.  
data(Titanic)
d = as.data.frame(Titanic)
d = d[rep.int(row.names(d), times=d$Freq), 1:4]
d$Survived = factor(d$Survived, levels=c("Yes","No"))

pan.fun = function(x, y, ...){
    usr <- par("usr"); on.exit(par(usr))
    par(usr = c(usr[1:2], 0, 1.5), new=T )
    spineplot(as.factor(x), as.factor(y), main="", xlab="", ylab="", axes=F)
}
windows()
  pairs(d[,c(4,1:3)], panel=pan.fun)


windows()
  coplot(Survived~Sex|Class*Age, d, panel=pan.fun)


A: Like I mentioned in the comments: you can plot more dimensions/groups by putting age on the x-axis and scaling or colouring the datapoints based on exposure. 
An option to make fancy plots in R is using the ggplot2 package:
library(ggplot2)

data = data.frame(y = rnorm(100)+(1:100), x = 1:100, z = 100:1, w = runif(100))

p <- ggplot(data = data, aes(x = x, y = y, color = z, size = w))
p + geom_point()

As you can see, in the function aes you can specify the variable to be used as measure for the size or color. Surely there are many many more options. ggplot2 is a huge graphical package that has almost endless possiblities.
It works using the ggplot() function specifying the data to be plotted, and you can then add features to the plot using functions like geom_point().
Edit
Since your response variable is binary, it might not really be interesting to plot it on one of your axes. Alternatively you could plot two continuous variables on the axes and plot the colour of the points as the response variable.

A bit off-topic, but is it a concious choice to specify age as a factor instead of just a continuous variable? In the current setting you are fitting 55 parameters just for age, which seems a bit over the top.
