From 1cf08e808f00625382a6d6680917663bc4a79359 Mon Sep 17 00:00:00 2001 From: cramakri <cramakri> Date: Tue, 20 Apr 2010 09:52:27 +0000 Subject: [PATCH] LMS-1483 Cosmetic changes to graphs. SVN: 15530 --- screening/.classpath | 2 +- screening/etc/tabular-data-graph.properties | 9 ++++++- .../generic/server/graph/HeatmapDataset.java | 24 ++----------------- .../server/graph/TabularDataHeatmap.java | 23 +++++++----------- 4 files changed, 20 insertions(+), 38 deletions(-) diff --git a/screening/.classpath b/screening/.classpath index 830db2e622b..4f56ff96ea0 100644 --- a/screening/.classpath +++ b/screening/.classpath @@ -33,7 +33,7 @@ <classpathentry kind="lib" path="/libraries/csv/csv.jar" sourcepath="/libraries/csv/src.zip"/> <classpathentry kind="lib" path="/libraries/mail/mail.jar"/> <classpathentry kind="lib" path="/libraries/jfreechart/jcommon-1.0.16.jar"/> - <classpathentry kind="lib" path="/libraries/jfreechart/jfreechart-1.0.13.jar" sourcepath="/libraries/jfreechart/jfreechart-1.0.13-javadocs.zip"> + <classpathentry kind="lib" path="/libraries/jfreechart/jfreechart-1.0.13.jar" sourcepath="/libraries/jfreechart/jfreechart-src.zip"> <attributes> <attribute name="javadoc_location" value="jar:platform:/resource/libraries/jfreechart/jfreechart-1.0.13-javadocs.zip!/jfreechart-1.0.13-javadocs"/> </attributes> diff --git a/screening/etc/tabular-data-graph.properties b/screening/etc/tabular-data-graph.properties index 04cb84acd09..61b7bdf9372 100644 --- a/screening/etc/tabular-data-graph.properties +++ b/screening/etc/tabular-data-graph.properties @@ -18,7 +18,7 @@ column-width = 300 column-height = 200 # The graphs shown per row -graphs = scatter1, hist, heat, scatter2 +graphs = scatter1, hist, heat, heat2, scatter2 # The properties for the first scatter plot scatter1.graph-type = scatterplot @@ -38,6 +38,13 @@ heat.y-axis = WellName heat.column = InfectionIndex heat.title = Infection Index +# The properties for the second heatmap +heat2.graph-type = heatmap +heat2.x-axis = WellName +heat2.y-axis = WellName +heat2.column = TotalCells +heat2.title = Total Cells + # The properties for the second scatter plot scatter2.graph-type = scatterplot scatter2.x-axis = TotalCells diff --git a/screening/source/java/ch/systemsx/cisd/openbis/dss/generic/server/graph/HeatmapDataset.java b/screening/source/java/ch/systemsx/cisd/openbis/dss/generic/server/graph/HeatmapDataset.java index 52af2ea9b11..32326fcf2e2 100644 --- a/screening/source/java/ch/systemsx/cisd/openbis/dss/generic/server/graph/HeatmapDataset.java +++ b/screening/source/java/ch/systemsx/cisd/openbis/dss/generic/server/graph/HeatmapDataset.java @@ -16,8 +16,6 @@ package ch.systemsx.cisd.openbis.dss.generic.server.graph; -import java.util.List; - import org.jfree.data.DomainOrder; import org.jfree.data.Range; import org.jfree.data.general.DatasetChangeListener; @@ -30,11 +28,9 @@ import org.jfree.data.xy.XYZDataset; */ public class HeatmapDataset implements XYZDataset { - DefaultXYZDataset wrappedDataset; - - Range range; + private final DefaultXYZDataset wrappedDataset; - List<String> yLabels; + private Range range; public HeatmapDataset(DefaultXYZDataset dataset) { @@ -57,22 +53,6 @@ public class HeatmapDataset implements XYZDataset this.range = range; } - /** - * The labels for the y axis. - */ - public List<String> yLabels() - { - return yLabels; - } - - /** - * Set the labels for the y axis. - */ - public void setYLabels(List<String> yLabels) - { - this.yLabels = yLabels; - } - // XYZDataset public Number getZ(int series, int item) { diff --git a/screening/source/java/ch/systemsx/cisd/openbis/dss/generic/server/graph/TabularDataHeatmap.java b/screening/source/java/ch/systemsx/cisd/openbis/dss/generic/server/graph/TabularDataHeatmap.java index a25ea9023ad..50bb00596c9 100644 --- a/screening/source/java/ch/systemsx/cisd/openbis/dss/generic/server/graph/TabularDataHeatmap.java +++ b/screening/source/java/ch/systemsx/cisd/openbis/dss/generic/server/graph/TabularDataHeatmap.java @@ -24,7 +24,6 @@ import java.util.List; import org.jfree.chart.ChartFactory; import org.jfree.chart.JFreeChart; import org.jfree.chart.axis.NumberAxis; -import org.jfree.chart.axis.NumberTickUnit; import org.jfree.chart.plot.PlotOrientation; import org.jfree.chart.plot.XYPlot; import org.jfree.chart.renderer.LookupPaintScale; @@ -85,8 +84,9 @@ public class TabularDataHeatmap extends AbstractTabularDataGraph<TabularDataHeat protected JFreeChart createDataChart(Dataset dataset) { JFreeChart chart = createHeatmap(getTitle(), // title - configuration.getXAxisColumn(), // x-axis label - configuration.getYAxisColumn(), // y-axis label + // don't use the use-provided label for the wells, just use a blank string + "", // x-axis label + "", // y-axis label (HeatmapDataset) dataset, // data PlotOrientation.HORIZONTAL, // plot orientation false, // create legend? @@ -106,19 +106,16 @@ public class TabularDataHeatmap extends AbstractTabularDataGraph<TabularDataHeat throw new IllegalArgumentException("Null 'orientation' argument."); } NumberAxis xAxis = new NumberAxis(xAxisLabel); - xAxis.setAutoRangeIncludesZero(false); - xAxis.setTickUnit(new NumberTickUnit(1.)); NumberAxis yAxis = new NumberAxis(yAxisLabel); - yAxis.setAutoRangeIncludesZero(false); XYBlockRenderer renderer = new XYBlockRenderer(); - renderer.setBlockAnchor(RectangleAnchor.BOTTOM_LEFT); + renderer.setBlockAnchor(RectangleAnchor.CENTER); PaintScale paintScale = getPaintScale(dataset); renderer.setPaintScale(paintScale); XYPlot plot = new XYPlot(dataset, xAxis, yAxis, null); plot.setOrientation(orientation); - plot.setForegroundAlpha(0.5f); + plot.setForegroundAlpha(1.f); plot.setRenderer(renderer); plot.setBackgroundPaint(Color.WHITE); plot.setRangeGridlinePaint(Color.BLACK); @@ -143,13 +140,12 @@ public class TabularDataHeatmap extends AbstractTabularDataGraph<TabularDataHeat */ private static PaintScale getPaintScale(HeatmapDataset dataset) { - LookupPaintScale paintScale = new LookupPaintScale(); // Use the Color Brewer RdBu color scheme with 11 steps Range range = dataset.getRange(); + LookupPaintScale paintScale = + new LookupPaintScale(range.getLowerBound(), range.getUpperBound(), Color.WHITE); double binMin = range.getLowerBound(); double binStep = range.getLength() / 11; - // 0 - paintScale.add(0, new Color(255, 255, 255)); // 1 paintScale.add(binMin, new Color(5, 48, 97)); // 2 @@ -204,9 +200,8 @@ public class TabularDataHeatmap extends AbstractTabularDataGraph<TabularDataHeat } else { Location loc = Location.tryCreateLocationFromMatrixCoordinate(line[xColumn]); - // transpose the x and y here - element.x = loc.getY(); - element.y = loc.getX(); + element.x = loc.getX(); + element.y = loc.getY(); } element.z = Double.parseDouble(line[zColumn]); if (false == areZBoundsInitialized) -- GitLab