achartengineを使用してAndroidで棒グラフを作成するためのサンプルJavaコードを少なくとも1つ教えてください。Googleで検索を行いましたが、すべてが明確ではありません。
貴重なお時間をいただきありがとうございます!..
YouTubeでAChartEngineを検索することもできます。AChartEngineを使用してチャートを作成する方法に関する優れたビデオチュートリアルがあります。棒グラフ用に1つあります。
AChartEngineは、参照できるデモアプリを提供します-http: //code.google.com/p/achartengine/source/browse/#svn%2Ftrunk%2Fclient%2Fsrc%2Forg%2Fachartengine%2Fdemo
棒グラフを作成するプロセスについてのヒントを提供しようと思います。
まず、重要な成分:
シリーズ-1つのシリーズは、X軸とY軸の値であるデータポイントのセットを保持します。XYSeries、TimeSeries、CategorySeriesなどがあります。データのタイプによって異なり、複数持つことができます。
XYSeries series = new XYSeries("Series name");
レンダラー-シリーズごとに1つのレンダラーが必要です。レンダラーは、シリーズにいくつかの基本的な属性を与えるために使用されます。
XYSeriesRenderer renderer = new XYSeriesRenderer();
データセット-シリーズのコレクションです。シリーズとレンダラーを追加する順序について心配する必要があります。同じである必要があります。
XYMultipleSeriesDataset dataset = new XYMultipleSeriesDataset();
複数のレンダラー-通常のレンダラーが含まれており、X軸とY軸の制限から、ズームの有効化、バーの幅、バーの間隔、軸の可視性、ラベル、凡例まで、チャートの多くの属性を設定できます。グリッドなど。
XYMultipleSeriesRenderer mRenderer = new XYMultipleSeriesRenderer();
GraphicalView-基本的には、前述のすべてのコンテナです。この要素はチャートであり、レイアウトの適切なビューに追加する必要があります。
GraphicalView chartView;
レンダラーにいくつかの属性を割り当てる例
renderer.setFillPoints(true);
renderer.setColor(getResources()
.getColor(R.color.black));
rendererRight.setDisplayChartValues(true);
mRenderer.setXAxisMin(0);
mRenderer.setXAxisMax(10);
mRenderer.setYAxisMin(0);
mRenderer.setYAxisMax(100);
mRenderer.setMarginsColor(colorWhite);
mRenderer.setZoomEnabled(false, false);
mRenderer.setPanEnabled(false, false);
mRenderer.setShowLabels(true);
mRenderer.setBarSpacing(0.5);
ランダムを使用してシリーズイテレータを埋めます。iはX値になり、0から99までのランダム値はY値になります。
Random r = new Random();
for (int i = 0; i < 10; i++) {
series.add(i, r.nextInt(100));
}
次の行は、レンダラーを複数のレンダラーに追加し、シリーズをデータセットに追加するためのものです
mRenderer.addSeriesRenderer(renderer);
dataset.addSeries(series);
形成の最後のステップは、棒グラフを使用して作成することです。パラメーターコンテキスト、データセット、複数のレンダラー、およびデフォルトまたはスタック可能なタイプを追加する必要があります。
chartView = ChartFactory.getBarChartView(getActivity(), dataset, mRenderer, BarChart.Type.DEFAULT);
最後に、適切なビューにチャートを追加します。この例では、FrameLayoutです。
(FrameLayout) findViewById(R.id.bar_chart)).addView(chartView);