package com.baselet.element.elementnew.plot.elements; import java.io.IOException; import java.util.Arrays; import java.util.List; import com.baselet.diagram.draw.DrawHandler; import com.baselet.element.elementnew.plot.drawer.PlotGridDrawConfig; import com.baselet.element.elementnew.plot.parser.PlotConstants; import com.baselet.element.elementnew.plot.parser.PlotConstants.AxisList; import com.baselet.element.elementnew.plot.parser.PlotConstants.AxisShow; import com.baselet.element.elementnew.plot.parser.PlotState; public class BarPlot extends AbstractPlot { public BarPlot(DrawHandler drawer, PlotGridDrawConfig plotDrawConfig, PlotState plotState, int xPos, int yPos) { super(drawer, plotDrawConfig, plotState, xPos, yPos); } @Override public void plot(int columnCount, int rowCount) { setPlotPosition(columnCount, rowCount); // The barplot should always start at 0 even if there are only values which are > 0 or only values < 0 try { if (!plotState.containsKey(PlotConstants.KEY_INT_MIN_VALUE)) { plot.setMinValue(0.0); } } catch (IOException e) {} try { if (!plotState.containsKey(PlotConstants.KEY_INT_MAX_VALUE)) { plot.setMaxValue(0.0); } } catch (IOException e) {} Boolean tilt = plotState.getValueAsBoolean(PlotConstants.KEY_BOOL_PLOT_TILT, PlotConstants.PLOT_TILT_DEFAULT); plotState.checkIfAllValuesUsed(); plot.drawPlotAndDescValueAxis(!tilt, true, false, false); } @Override protected List<AxisShow> defaultDescAxisShow() { return Arrays.asList(AxisShow.Axis, AxisShow.Marker, AxisShow.Text); } @Override protected List<AxisShow> defaultValueAxisShow() { return Arrays.asList(AxisShow.Axis, AxisShow.Line, AxisShow.Marker, AxisShow.Text); } @Override protected List<AxisList> defaultValueAxisList() { return Arrays.asList(AxisList.Relevant); } @Override protected int getMaxAllowedValueRows() { return Integer.MAX_VALUE; } }