1

基本的な「 AndroidPlot」棒グラフの例を探しています。

数人がサイト フォーラム経由で開発者に連絡しましたが、彼はまだそのチュートリアルに取り組んでいると述べています。

ただし、彼は、今のところ見るためのより詳細な例にリンクしています。

問題は、ライブラリのより複雑な部分に精通していないことは明らかであるため、棒グラフと他の機能をレンダリングする部分を理解できないことです。

AndroidPlotを使用して、棒グラフのコードの基本構造を教えてください。

ありがとうございました。

4

1 に答える 1

0

AChartEngine でこのように動作するようになりました (セットアップ、1 つのレンダラーを使用し、1 つのデータセットで、アクティブな変化するグラフです):

LinearLayout layout = (LinearLayout)findViewById(R.id.chart);

// setup dataset and renderer
dataset = new XYMultipleSeriesDataset();
renderer = new XYMultipleSeriesRenderer();

// configure renderer
renderer.setZoomEnabled(false, false);
renderer.setPanEnabled(false, false);
renderer.setYAxisMax(90);
renderer.setYAxisMin(0);
renderer.setXAxisMin(-1);
renderer.setBarSpacing(0.5);
renderer.setShowLegend(false);
renderer.setXLabels(0);             // hides the default labels
renderer.setLabelsTextSize(15);

// create chart
mChartView = ChartFactory.getBarChartView(this, dataset, renderer, BarChart.Type.DEFAULT);
layout.addView(mChartView, new LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT));

// add some data, so the chart shows
XYSeriesRenderer r = new XYSeriesRenderer();
r.setColor(Color.rgb(192, 192, 192));
renderer.addSeriesRenderer(r);
XYSeries c = new XYSeries("");
c.add(0,0);
dataset.addSeries(c);

その後、もう一度レンダリングして活気を与えます (自分のコードからいくつかの部分を切り取ったことに注意してください。完全ではない可能性があります)。

// remove any bars that already exist
if (theAct.dataset.getSeriesCount() > 0) {
    theAct.dataset.removeSeries(0);
}

XYSeries c = new XYSeries("");

// for some reason, the bar is very narrow, when only one bar is shown,
// when we use a negative spacing, the bar will be bigger
// i is the number of bars
if (i == 1) {
    theAct.renderer.setBarSpacing(-0.8);
} else {
    theAct.renderer.setBarSpacing(0.5);
}

// finish up and render!
theAct.renderer.setXAxisMax(i);
theAct.dataset.addSeries(c);
theAct.mChartView.zoomReset();
theAct.mChartView.repaint();
于 2012-10-29T08:54:04.623 に答える