plot.setBackgroundPaint(Color.WHITE);
plot.setOutlinePaint(null);
plot.setRangeGridlinesVisible(true);
plot.setRangeGridlinePaint(Color.black);
CategoryAxis domainAxis = new ShiftedCategoryAxis(null);
plot.setDomainAxis(domainAxis);
domainAxis.setCategoryLabelPositions(CategoryLabelPositions.UP_90);
domainAxis.setLowerMargin(0.0);
domainAxis.setUpperMargin(0.0);
// voodoo for better spacing between labels with many columns
domainAxis.setCategoryMargin(-((double) dataset.getColumnCount() / 10.0));
ValueAxis axis = new NumberAxis();
plot.setDataset(1, workspaceDataset);
LineAndShapeRenderer renderer = new LineAndShapeRenderer();
renderer.setBaseShapesVisible(false);
renderer.setSeriesStroke(0, new BasicStroke(4f, BasicStroke.JOIN_ROUND, BasicStroke.JOIN_BEVEL));