Skip to content
Snippets Groups Projects
Commit 1cf08e80 authored by cramakri's avatar cramakri
Browse files

LMS-1483 Cosmetic changes to graphs.

SVN: 15530
parent 17efce2f
No related branches found
No related tags found
No related merge requests found
......@@ -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>
......
......@@ -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
......
......@@ -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)
{
......
......@@ -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)
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment