use of com.vaadin.addon.charts.model.XAxis in project charts by vaadin.
the class AreaSpline method getChart.
@Override
protected Component getChart() {
Chart chart = new Chart(ChartType.AREASPLINE);
chart.setHeight("450px");
Configuration conf = chart.getConfiguration();
conf.setTitle(new Title("Average fruit consumption during one week"));
Legend legend = new Legend();
legend.setLayout(LayoutDirection.VERTICAL);
legend.setAlign(HorizontalAlign.LEFT);
legend.setFloating(true);
legend.setVerticalAlign(VerticalAlign.TOP);
legend.setX(150);
legend.setY(100);
conf.setLegend(legend);
XAxis xAxis = new XAxis();
xAxis.setCategories(new String[] { "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday" });
// add blue background for the weekend
PlotBand plotBand = new PlotBand(4.5, 6.5, LIGHT_BLUE);
plotBand.setZIndex(1);
xAxis.setPlotBands(plotBand);
conf.addxAxis(xAxis);
YAxis yAxis = new YAxis();
yAxis.setTitle(new AxisTitle("Fruit units"));
conf.addyAxis(yAxis);
Tooltip tooltip = new Tooltip();
// Customize tooltip formatting
tooltip.setHeaderFormat("");
tooltip.setPointFormat("{series.name}: {point.y} units");
// Same could be achieved by defining following JS formatter funtion:
// tooltip.setFormatter("function(){ return this.x +': '+ this.y +' units';}");
// ... or its shorthand form:
// tooltip.setFormatter("this.x +': '+ this.y +' units'");
conf.setTooltip(tooltip);
PlotOptionsArea plotOptions = new PlotOptionsArea();
plotOptions.setFillOpacity(0.5);
conf.setPlotOptions(plotOptions);
ListSeries o = new ListSeries("John", 3, 4, 3, 5, 4, 10);
// Add last value separately
o.addData(12);
conf.addSeries(o);
conf.addSeries(new ListSeries("Jane", 1, 3, 4, 3, 3, 5, 4));
chart.drawChart(conf);
return chart;
}
use of com.vaadin.addon.charts.model.XAxis in project charts by vaadin.
the class AreaWithMissingPoints method getChart.
@Override
protected Component getChart() {
Chart chart = new Chart(ChartType.AREA);
Configuration conf = chart.getConfiguration();
conf.getChart().setSpacingBottom(30);
conf.setTitle(new Title("Fruit consumption *"));
Subtitle subTitle = new Subtitle("* Jane\'s banana consumption is unknown");
subTitle.setFloating(true);
subTitle.setY(15);
subTitle.setAlign(HorizontalAlign.RIGHT);
subTitle.setVerticalAlign(VerticalAlign.BOTTOM);
conf.setSubTitle(subTitle);
XAxis xAxis = new XAxis();
xAxis.setCategories("Apples", "Pears", "Oranges", "Bananas", "Grapes", "Plums", "Strawberries", "Raspberries");
conf.addxAxis(xAxis);
Legend legend = new Legend();
legend.setLayout(LayoutDirection.VERTICAL);
legend.setAlign(HorizontalAlign.LEFT);
legend.setFloating(true);
legend.setVerticalAlign(VerticalAlign.TOP);
legend.setX(150);
legend.setY(100);
legend.setBorderWidth(1);
legend.setBackgroundColor(new SolidColor("#ffffff"));
conf.setLegend(legend);
PlotOptionsArea plotOptions = new PlotOptionsArea();
plotOptions.setFillOpacity(0.5);
conf.setPlotOptions(plotOptions);
conf.addSeries(new ListSeries("John", 0, 1, 4, 4, 5, 2, 3, 7));
conf.addSeries(new ListSeries("Jane", 1, 0, 3, null, 3, 1, 2, 1));
chart.drawChart(conf);
return chart;
}
use of com.vaadin.addon.charts.model.XAxis in project charts by vaadin.
the class AreaWithNegativeValues method getChart.
@Override
protected Component getChart() {
Chart chart = new Chart(ChartType.AREA);
Configuration conf = chart.getConfiguration();
conf.setTitle(new Title("Area chart with negative values"));
XAxis xAxis = new XAxis();
xAxis.setCategories("Apples", "Oranges", "Pears", "Grapes", "Bananas");
conf.addxAxis(xAxis);
conf.setCredits(new Credits(false));
Tooltip tooltip = new Tooltip();
tooltip.setFormatter("this.series.name +': '+ this.y");
conf.setTooltip(tooltip);
conf.addSeries(new ListSeries("John", 5, 3, 4, 7, 2));
conf.addSeries(new ListSeries("Jane", 2, -2, -3, 2, 1));
conf.addSeries(new ListSeries("Joe", 3, 4, 4, -2, 5));
chart.drawChart(conf);
return chart;
}
use of com.vaadin.addon.charts.model.XAxis in project charts by vaadin.
the class BasicArea method getChart.
@Override
protected Component getChart() {
Chart chart = new Chart(ChartType.AREA);
Configuration conf = chart.getConfiguration();
conf.setTitle(new Title("US and USSR nuclear stockpiles"));
conf.setSubTitle(new Subtitle("Source: <a href=\"http://thebulletin.metapress.com/content/c4120650912x74k7/fulltext.pdf\">thebulletin.metapress.com</a>"));
PlotOptionsArea plotOptions = new PlotOptionsArea();
plotOptions.setPointStart(1940);
Marker marker = new Marker();
marker.setEnabled(false);
marker.setSymbol(MarkerSymbolEnum.CIRCLE);
marker.setRadius(2);
States states = new States();
states.setHover(new Hover(true));
marker.setStates(states);
plotOptions.setMarker(marker);
conf.setPlotOptions(plotOptions);
XAxis xAxis = new XAxis();
Labels labels = new Labels();
// Display x axis value (year) as non formatted integer
labels.setFormatter("this.value");
xAxis.setLabels(labels);
conf.addxAxis(xAxis);
YAxis yAxis = new YAxis();
yAxis.setTitle(new AxisTitle("Nuclear weapon states"));
labels = new Labels();
// display y axis value in kilos as there is such a pile of weapons
labels.setFormatter("this.value / 1000 +'k'");
yAxis.setLabels(labels);
conf.addyAxis(yAxis);
Tooltip tooltip = new Tooltip();
tooltip.setFormatter("this.series.name +' produced <b>'+ Highcharts.numberFormat(this.y, 0) +'</b><br/>warheads in '+ this.x");
conf.setTooltip(tooltip);
final Number[] usaNumbers = new Number[] { null, null, null, null, null, 6, 11, 32, 110, 235, 369, 640, 1005, 1436, 2063, 3057, 4618, 6444, 9822, 15468, 20434, 24126, 27387, 29459, 31056, 31982, 32040, 31233, 29224, 27342, 26662, 26956, 27912, 28999, 28965, 27826, 25579, 25722, 24826, 24605, 24304, 23464, 23708, 24099, 24357, 24237, 24401, 24344, 23586, 22380, 21004, 17287, 14747, 13076, 12555, 12144, 11009, 10950, 10871, 10824, 10577, 10527, 10475, 10421, 10358, 10295, 10104 };
conf.addSeries(new ListSeries("USA", usaNumbers));
final Number[] ussrNumbers = new Number[] { null, null, null, null, null, null, null, null, null, null, 5, 25, 50, 120, 150, 200, 426, 660, 869, 1060, 1605, 2471, 3322, 4238, 5221, 6129, 7089, 8339, 9399, 10538, 11643, 13092, 14478, 15915, 17385, 19055, 21205, 23044, 25393, 27935, 30062, 32049, 33952, 35804, 37431, 39197, 45000, 43000, 41000, 39000, 37000, 35000, 33000, 31000, 29000, 27000, 25000, 24000, 23000, 22000, 21000, 20000, 19000, 18000, 18000, 17000, 16000 };
conf.addSeries(new ListSeries("USSR/Russia", ussrNumbers));
chart.drawChart(conf);
return chart;
}
use of com.vaadin.addon.charts.model.XAxis in project charts by vaadin.
the class InvertedAxes method getChart.
@Override
protected Component getChart() {
Chart chart = new Chart(ChartType.AREA);
Configuration conf = chart.getConfiguration();
conf.getChart().setInverted(true);
conf.setTitle(new Title("Average fruit consumption during one week"));
XAxis xAxis = new XAxis();
xAxis.setCategories("Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday");
conf.addxAxis(xAxis);
YAxis yAxis = new YAxis();
yAxis.setTitle(new AxisTitle("Number of units"));
yAxis.setMin(0);
conf.addyAxis(yAxis);
Legend legend = new Legend();
legend.setLayout(LayoutDirection.VERTICAL);
legend.setAlign(HorizontalAlign.LEFT);
legend.setFloating(true);
legend.setVerticalAlign(VerticalAlign.TOP);
legend.setX(-150);
legend.setY(100);
legend.setBorderWidth(1);
legend.setBackgroundColor(new SolidColor("#ffffff"));
conf.setLegend(legend);
PlotOptionsArea plotOptions = new PlotOptionsArea();
plotOptions.setFillOpacity(0.5);
conf.setPlotOptions(plotOptions);
conf.addSeries(new ListSeries("John", 3, 4, 3, 5, 4, 10, 12));
conf.addSeries(new ListSeries("Jane", 1, 3, 4, 3, 3, 5, 4));
chart.drawChart(conf);
return chart;
}
Aggregations