Class ExperimentExplorerPlotServlet

java.lang.Object
javax.servlet.GenericServlet
javax.servlet.http.HttpServlet
net.sf.basedb.clients.web.servlet.ExperimentExplorerPlotServlet
All Implemented Interfaces:
Serializable, Servlet, ServletConfig

public class ExperimentExplorerPlotServlet extends HttpServlet
Plot servlet for generating plots from experiment explorer.
Version:
2.14
Author:
Nicklas
See Also:
Last modified
$Date: 2021-06-04 12:40:45 +0200 (Fri, 04 Jun 2021) $
  • Field Details

    • serialVersionUID

      private static final long serialVersionUID
      See Also:
    • maxWidth

      private int maxWidth
    • maxHeight

      private int maxHeight
    • defaultWidth

      private int defaultWidth
    • defaultHeight

      private int defaultHeight
    • defaultFormat

      private String defaultFormat
  • Constructor Details

    • ExperimentExplorerPlotServlet

      public ExperimentExplorerPlotServlet()
  • Method Details

    • init

      public void init() throws ServletException
      Overrides:
      init in class GenericServlet
      Throws:
      ServletException
    • doGet

      public void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException
      Overrides:
      doGet in class HttpServlet
      Throws:
      IOException
      ServletException
    • saveImageToFile

      private void saveImageToFile(DbControl dc, BufferedImage image, String path, String format, boolean overwrite) throws IOException
      Throws:
      IOException
    • calculateBoxAndWhiskerStatistics

      public BoxAndWhiskerItem calculateBoxAndWhiskerStatistics(List<Float> values)
      Creates a box-and-whisker data holder for the given list of values. The data holder will be populated with the median and the 5th, 25th, 75th and 95th percentile values as follows:
      • median = BAWI.getMedian()
      • 5th percentile = BAWI.getMinRegularValue()
      • 25th percentile = BAWI.getQ1()
      • 75th percentile = BAWI.getQ3()
      • 95th percentile = BAWI.getMaxRegularValue()
      The mean and outlier values are currently not calculated (may change in the future).
      Parameters:
      values - The list of values which must be sorted in ascending order
      Returns:
      A BoxAndWhiskerItem object
    • getPercentile

      public float getPercentile(List<? extends Number> values, int percentile)
      Calculates the percentile values from a sorted list of values. If the percentile falls between two elements in the list the average of the two nearest elements are used.
      Parameters:
      values - The values which must be sorted
      percentile - The percentile, a value between 0 and 100
      Returns:
      The percentile value, or Float.NaN if it could not be calculated