4.1.1 Line Series

This series uses ChartDataModel as its data model. There are several types of LineSeries. They can be set using enumeration LineStrategies. In order to draw various series, you need to use enumeration LineStrategies to choose appropriate lines’ drawing strategy. However, if there is a requirement for a custom type of strategy, it is possible to set it directly to the stylesheet, using tag “strategy”, e.g. style.setObject(“strategy”, new MyStrategy()).

Setting LineSeries object:

1
2
3
4
5
// Sets LineSeries object, named line2, where 
//    chartDataModel is an instance of ChartDataModel and contains values which will be
//    shown on chart
//    xMapper and yMapper are instances of AxisMapper and will map values from chartDataModel
LineSeries lineSeries = new LineSeries(chartDataModel, xMapper, yMapper);

Scatter Series

Scatter Series represents each data value in the data model as a point in a chart, which is set according to KEY (X-axis) and VALUE (Y-axis). KEYS specify horizontal position and VALUES specify vertical position. Furthermore, it is possible to set markers which represent those points in the chart.

Setting Scatter Series:

 
// setting strategy for object named lineSeries which is an instance of LineSeries
lineSeries.setStrategy(LineStrategies.SCATTER_STRATEGY);

Setting Marker:

 
// adding dot marker for object named lineSeries which is instance of LineSeries
lineSeries.addMarker(new DotMarker());

Scatter Line Series Demonstration

Figure 4.1.1.1 Scatter Line Series Demonstration

View Source

For more information about markers, see chapter 5.6 Markers.

Stepped Line Series

Stepped Line Series is a series where two neighbor points are connected indirectly. This is done in such manner:

  1. Two perpendiculars are drawn. One is drawn from the first point to an X-axis and another - from a second point to a Y-axis.
  2. Then, straight lines, from points which we want to connect, to a point where those perpendiculars coincide, are drawn.

Thus, we have two points connected in an indirect way.

Setting Stepped line Series:

 
// setting strategy for object named connectedSeries1 which is an instance of LineSeries
connectedSeries1.setStrategy(LineStrategies.STEPPED_LINE_STRATEGY);

Stepped Line Series Demonstration

Figure 4.1.1.2 Stepped Line Series Demonstration

View Source

Direct Line Series

Direct Line Series is a series, where value points are connected with each other with a straight line.

Setting Direct Line Series:

 
// setting strategy for object named connectedSeries1 which is an instance of LineSeries
connectedSeries1.setStrategy(LineStrategies.DIRECT_LINE_STRATEGY);

Direct Line Series Demonstration

Figure 4.1.1.3 Direct Line Series Demonstration

View Source

Spline Series

Spline Series is similar to Direct Line Series, but points are connected with curved lines, not straight.

Setting Spline Series:

 
// setting strategy for object named lineA which is an instance of LineSeries
lineA.setStrategy(LineStrategies.SPLINE_STRATEGY);

Spline Series Demonstration

Figure 4.1.1.4 Spline Series Demonstration

View Source

Null Spline Series

Null Spline Series is similar to Spline Series, but null points are interpolated and are shown as curved line, not straight as with Spline Series.

Setting Null Spline Series:

 
// setting strategy for object named line which is an instance of LineSeries
connectedSeries1.setStrategy(LineStrategies.NULL_SPLINE_STRATEGY);

Null Spline Series Demonstration

Figure 4.1.1.5 Percentage Area Line Series Demonstration

View Source

Percentage Area Line Series

Percentage Area Line Series is a series where values are automatically scaled so that they are stacked to 100%. Stacked chart data models should be used.

Setting Percentage Area Line Series:

 
// setting strategy for object named connectedSeries1 which is an instance of LineSeries
connectedSeries1.setStrategy(LineStrategies.PERCENTAGE_AREA_LINE_STRATEGY);

Percentage Area Line Series Demonstration

Figure 4.1.1.6 Percentage Area Line Series Demonstration

View Source

Other Line Series Properties

Caching

Caching enables to generate images faster, by storing them in computer memory. This might be very useful when there are many points that need to be represented on chart.

Enabling caching:

 
// enabling caching for object named connectedSeries1 which is an instance of LineSeries
connectedSeries1.setCachingEnabled(true);