Having another thought brings up the following idea: Scatter plots in JFreeChart use the XYDotRenderer on an XYPlot. You could probably create a biplot-chart by just adding another XYDataset and rendering it with a simple XYLineAndShapeRenderer.
I'm stumped. The XYDataset class in JFreeChart only allows double values?
That's right. If you want non-number values you would have to use a CategoryPlot with a CategoryAxis. You would probably use the ScatterRenderer for this, like shown in in the JFreeChart demo-collection (Miscellaneous/ScatterRendererDemo1).