use of com.vaadin.addon.charts.model.Configuration in project charts by vaadin.
the class DonutChart method createChart.
public static Chart createChart() {
rand = new Random(0);
Chart chart = new Chart(ChartType.PIE);
Configuration conf = chart.getConfiguration();
conf.setTitle("Browser market share, April, 2011");
YAxis yaxis = new YAxis();
yaxis.setTitle("Total percent market share");
PlotOptionsPie pie = new PlotOptionsPie();
pie.setShadow(false);
conf.setPlotOptions(pie);
conf.getTooltip().setValueSuffix("%");
DataSeries innerSeries = new DataSeries();
innerSeries.setName("Browsers");
PlotOptionsPie innerPieOptions = new PlotOptionsPie();
innerSeries.setPlotOptions(innerPieOptions);
innerPieOptions.setSize("237px");
innerPieOptions.setDataLabels(new DataLabels());
innerPieOptions.getDataLabels().setFormatter("this.y > 5 ? this.point.name : null");
innerPieOptions.getDataLabels().setColor(new SolidColor(255, 255, 255));
innerPieOptions.getDataLabels().setDistance(-30);
Color[] innerColors = Arrays.copyOf(colors, 5);
innerSeries.setData(new String[] { "MSIE", "Firefox", "Chrome", "Safari", "Opera" }, new Number[] { 55.11, 21.63, 11.94, 7.15, 2.14 }, innerColors);
DataSeries outerSeries = new DataSeries();
outerSeries.setName("Versions");
PlotOptionsPie outerSeriesOptions = new PlotOptionsPie();
outerSeries.setPlotOptions(outerSeriesOptions);
outerSeriesOptions.setInnerSize("237px");
outerSeriesOptions.setSize("318px");
outerSeriesOptions.setDataLabels(new DataLabels());
outerSeriesOptions.getDataLabels().setFormatter("this.y > 1 ? '<b>'+ this.point.name +':</b> '+ this.y +'%' : null");
DataSeriesItem[] outerItems = new DataSeriesItem[] { /* @formatter:off */
new DataSeriesItem("MSIE 6.0", 10.85, color(0)), new DataSeriesItem("MSIE 7.0", 7.35, color(0)), new DataSeriesItem("MSIE 8.0", 33.06, color(0)), new DataSeriesItem("MSIE 9.0", 2.81, color(0)), new DataSeriesItem("Firefox 2.0", 0.20, color(1)), new DataSeriesItem("Firefox 3.0", 0.83, color(1)), new DataSeriesItem("Firefox 3.5", 1.58, color(1)), new DataSeriesItem("Firefox 3.6", 13.12, color(1)), new DataSeriesItem("Firefox 4.0", 5.43, color(1)), new DataSeriesItem("Chrome 5.0", 0.12, color(2)), new DataSeriesItem("Chrome 6.0", 0.19, color(2)), new DataSeriesItem("Chrome 7.0", 0.12, color(2)), new DataSeriesItem("Chrome 8.0", 0.36, color(2)), new DataSeriesItem("Chrome 9.0", 0.32, color(2)), new DataSeriesItem("Chrome 10.0", 9.91, color(2)), new DataSeriesItem("Chrome 11.0", 0.50, color(2)), new DataSeriesItem("Chrome 12.0", 0.22, color(2)), new DataSeriesItem("Safari 5.0", 4.55, color(3)), new DataSeriesItem("Safari 4.0", 1.42, color(3)), new DataSeriesItem("Safari Win 5.0", 0.23, color(3)), new DataSeriesItem("Safari 4.1", 0.21, color(3)), new DataSeriesItem("Safari/Maxthon", 0.20, color(3)), new DataSeriesItem("Safari 3.1", 0.19, color(3)), new DataSeriesItem("Safari 4.1", 0.14, color(3)), new DataSeriesItem("Opera 9.x", 0.12, color(4)), new DataSeriesItem("Opera 10.x", 0.37, color(4)), new DataSeriesItem("Opera 11.x", 1.65, color(4)) /* @formatter:on */
};
outerSeries.setData(Arrays.asList(outerItems));
conf.setSeries(innerSeries, outerSeries);
chart.drawChart(conf);
return chart;
}
use of com.vaadin.addon.charts.model.Configuration in project charts by vaadin.
the class SVGGeneratorTest method generate_TreemapChart_withoutException.
@Test
public void generate_TreemapChart_withoutException() {
Chart chart = new Chart(ChartType.TREEMAP);
Configuration conf = chart.getConfiguration();
TreeSeries series = new TreeSeries();
conf.setSeries(series);
for (int i = 0; i < 10; ++i) {
double y = Math.random();
TreeSeriesItem item = new TreeSeriesItem("Attempt " + i, (int) Math.floor(y * 100));
int r = (int) (255 * y);
int g = 255 - (int) (255 * y);
item.setColor(new SolidColor(r, g, 100));
series.add(item);
}
String generatedSVG = SVGGenerator.getInstance().generate(conf);
Assert.assertTrue(generatedSVG != null);
}
use of com.vaadin.addon.charts.model.Configuration in project charts by vaadin.
the class SVGGeneratorTest method createConf.
private Configuration createConf() {
Configuration conf = new Configuration();
conf.setTitle("Historic World Population by Region");
conf.setSubTitle("Source: Wikipedia.org");
XAxis x = new XAxis();
x.setCategories("Africa", "America", "Asia", "Europe", "Oceania");
x.setTitle(new AxisTitle((String) null));
conf.addxAxis(x);
YAxis y = new YAxis();
y.setMin(0);
AxisTitle title = new AxisTitle("Population (millions)");
title.setAlign(VerticalAlign.HIGH);
y.setTitle(title);
conf.addyAxis(y);
Tooltip tooltip = new Tooltip();
// tooltip.setFormatter("this.series.name +': '+ this.y +' millions'");
conf.setTooltip(tooltip);
PlotOptionsBar plot = new PlotOptionsBar();
plot.setDataLabels(new DataLabels(true));
conf.setPlotOptions(plot);
Legend legend = new Legend();
legend.setLayout(LayoutDirection.VERTICAL);
legend.setAlign(HorizontalAlign.RIGHT);
legend.setVerticalAlign(VerticalAlign.TOP);
legend.setX(-100);
legend.setY(100);
legend.setFloating(true);
legend.setBorderWidth(1);
legend.setBackgroundColor(new SolidColor("#FFFFFF"));
legend.setShadow(true);
conf.setLegend(legend);
conf.disableCredits();
List<Series> series = new ArrayList<Series>();
series.add(new ListSeries("Year 1800", 107, 31, 635, 203, 2));
series.add(new ListSeries("Year 1900", 133, 156, 947, 408, 6));
series.add(new ListSeries("Year 2008", 973, 914, 4054, 732, 34));
conf.setSeries(series);
return conf;
}
use of com.vaadin.addon.charts.model.Configuration in project charts by vaadin.
the class PieWithLegendNavigator method getChart.
@Override
protected Component getChart() {
Chart chart = new Chart(ChartType.PIE);
Configuration conf = chart.getConfiguration();
Legend legend = conf.getLegend();
legend.setLayout(VERTICAL);
legend.setAlign(RIGHT);
legend.setVerticalAlign(TOP);
LegendNavigation nav = legend.getNavigation();
nav.setActiveColor(GREEN);
nav.setArrowSize(24);
conf.setTitle("Lot of slices to force navigation in legend");
PlotOptionsPie plotOptions = new PlotOptionsPie();
plotOptions.getDataLabels().setEnabled(false);
plotOptions.setShowInLegend(true);
conf.setPlotOptions(plotOptions);
DataSeries series = new DataSeries();
for (int i = 0; i < 50; i++) {
series.add(new DataSeriesItem("Item " + i, 1));
}
conf.addSeries(series);
return chart;
}
use of com.vaadin.addon.charts.model.Configuration in project charts by vaadin.
the class PieWithStartAndEndAngle method getChart.
@Override
protected Component getChart() {
Chart chart = new Chart(ChartType.PIE);
Configuration conf = chart.getConfiguration();
conf.setTitle("Browser market shares at a specific website, 2010");
PlotOptionsPie plotOptions = new PlotOptionsPie();
plotOptions.setStartAngle(45);
plotOptions.setEndAngle(180);
plotOptions.setCursor(Cursor.POINTER);
DataLabels dataLabels = new DataLabels(true);
dataLabels.setFormatter("'<b>'+ this.point.name +'</b>: '+ this.percentage +' %'");
plotOptions.setDataLabels(dataLabels);
conf.setPlotOptions(plotOptions);
conf.setSeries(getBrowserMarketShareSeries());
chart.drawChart();
return chart;
}
Aggregations