GWT Google Charts 差异柱状图

以下是差异柱状图的示例。

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

GWT Google Charts 差异柱状图 配置

我们使用ColumnChart类来显示差异柱状图。

// column chart
ColumnChart chart = new ColumnChart();

GWT Google Charts 差异柱状图 示例

package com.yiidian.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 ColumnChart chart;

    private void initialize() {
        ChartLoader chartLoader = new ChartLoader(ChartPackage.CORECHART);
        chartLoader.loadApi(new Runnable() {
            public void run() {
                // Create and attach the chart
                chart = new ColumnChart();
                RootPanel.get().add(chart);
                draw();
            }
        });
    }
    private void draw() {
        DataTable current = DataTable.create();
        current.addColumn(ColumnType.STRING, "Name");
        current.addColumn(ColumnType.NUMBER, "Score");

        current.addRow("Jane", 900);
        current.addRow("Joe", 1000);
        current.addRow("Janet", 1170);
        current.addRow("Robert", 1250);
        current.addRow("Julie", 1530);

        // Prepare the data
        DataTable older = DataTable.create();
        older.addColumn(ColumnType.STRING, "Name");
        older.addColumn(ColumnType.NUMBER, "Score");

        older.addRow("Jane", 400);
        older.addRow("Joe", 700);
        older.addRow("Janet", 970);
        older.addRow("Robert", 1000);
        older.addRow("Julie", 1100);

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

输出结果为:

热门文章

优秀文章