GWT Google Charts 多系列直方图

以下是多系列直方图的示例。

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

GWT Google Charts 多系列直方图 配置

我们使用Histogram类来显示基于面积的图表。

// Histogram chart
Histogram chart = new Histogram();

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.*;
import com.googlecode.gwt.charts.client.util.ChartHelper;

public class HelloWorld implements EntryPoint {
    private Histogram chart;

    private void initialize() {
        ChartLoader chartLoader = new ChartLoader(ChartPackage.CORECHART);
        chartLoader.loadApi(new Runnable() {
            public void run() {
                // Create and attach the chart
                chart = new Histogram();
                RootPanel.get().add(chart);
                draw();
            }
        });
    }
    private void draw() {
        // Prepare the data
        Object[][] data = new Object[][] { { "Student Roll No", "Height", "Weight" },
                {"1", 80, 40},{"2", 55, 30},{"3", 68, 34},{"4", 80, 40},{"5", 54, 27},
                {"6", 70, 35},{"7", 85, 42},{"8", 78, 40},{"9", 70, 35},{"10", 58, 28},
                {"11", 90, 45},{"12", 65, 33},{"13", 88, 50},{"14", 82, 41},{"15", 65, 30},
                {"16", 86, 43},{"17", 45, 30},{"18", 62, 30},{"19", 84, 42},{"20", 75, 40},
                {"21", 82, 41},{"22", 75, 40},{"23", 58, 30},{"24", 70, 35},{"25", 85, 40}
        };
        DataTable dataTable = ChartHelper.arrayToDataTable(data);

        // Set options
        HistogramOptions options = HistogramOptions.create();
        options.setTitle("Students height, in cm");
        options.setLegend(Legend.create(LegendPosition.NONE));
        options.setBucketSize(5);

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

输出结果为:

热门文章

优秀文章