当前位置: 首页 > 教程 > Google Charts >

GWT Google Charts 组合图

精华
小牛编辑
139浏览
2023-03-14

以下是组合图的示例。

我们已经在《GWT Google Charts 入门程序》章节中看到了用于绘制图表的基本步骤。现在,让我们看一个组合图的例子。

GWT Google Charts 组合图 配置

我们使用ComboChart类来显示组合图。

// Combination chart
ComboChart chart = new ComboChart();

GWT Google Charts 组合图 示例

package cn.xnip.helloWorld.client;

import com.google.gwt.core.client.EntryPoint;
import com.google.gwt.user.client.ui.*;
import com.google.gwt.user.client.rpc.AsyncCallback;
import com.google.gwt.user.client.DOM;
import com.google.gwt.event.dom.client.ClickHandler;
import com.google.gwt.event.dom.client.ClickEvent;
import com.googlecode.gwt.charts.client.ChartLoader;
import com.googlecode.gwt.charts.client.ChartPackage;
import com.googlecode.gwt.charts.client.ColumnType;
import com.googlecode.gwt.charts.client.DataTable;
import com.googlecode.gwt.charts.client.corechart.*;
import com.googlecode.gwt.charts.client.options.*;

public class HelloWorld implements EntryPoint {
    private ComboChart chart;

    private void initialize() {
        ChartLoader chartLoader = new ChartLoader(ChartPackage.CORECHART);
        chartLoader.loadApi(new Runnable() {
            public void run() {
                // Create and attach the chart
                chart = new ComboChart();
                RootPanel.get().add(chart);
                draw();
            }
        });
    }
    private void draw() {
        // Prepare the data
        DataTable data = DataTable.create();
        data.addColumn(ColumnType.STRING, "Fruits");
        data.addColumn(ColumnType.NUMBER, "Jane");
        data.addColumn(ColumnType.NUMBER, "Jone");
        data.addColumn(ColumnType.NUMBER, "Average");

        data.addRow("Apples", 3, 2, 2.5);
        data.addRow("Oranges",2, 3, 2.5);
        data.addRow("Pears", 1, 5, 3);
        data.addRow("Bananas", 3, 9, 6);
        data.addRow("Plums", 4, 2, 3);

        // Set options
        ComboChartOptions options = ComboChartOptions.create();
        options.setTitle("Fruits distribution");
        options.setHAxis(HAxis.create("Person"));
        options.setVAxis(VAxis.create("Fruits"));
        options.setSeriesType(SeriesType.BARS);

        ComboChartSeries lineSeries = ComboChartSeries.create();
        lineSeries.setType(SeriesType.LINE);
        options.setSeries(2,lineSeries);

        // Draw the chart
        chart.draw(data,options);
        chart.setWidth("600px");
        chart.setHeight("400px");
    }
    public void onModuleLoad() {
        initialize();
    }
}

输出结果为: