任何人都可以给我至少一个示例java代码使用achartengine 在android中创建一个条形图?我在谷歌上做了一些搜索,但他们都没有让我明白。
感谢您宝贵的时间!..
答案 0 :(得分:2)
您还可以尝试在youtube上搜索AChartEngine。您将找到有关如何使用AChartEngine构建图表的精彩视频教程。条形图有一个。
答案 1 :(得分:0)
AChartEngine提供了一个演示应用程序,您可以参考 - http://code.google.com/p/achartengine/source/browse/#svn%2Ftrunk%2Fclient%2Fsrc%2Forg%2Fachartengine%2Fdemo
答案 2 :(得分:0)
我会尝试给你一个关于创建条形图的过程的提示。
首先,关键成分:
系列 - 一个系列包含一组数据点,这些数据点是X轴和Y轴的值。它可以是XYSeries,TimeSeries,CategorySeries ......它取决于您的数据类型,并且您可以拥有多个。
XYSeries series = new XYSeries("Series name");
渲染器 - 对于每个系列,您需要一个渲染器。渲染器用于为系列提供一些基本属性。
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);
我们将使用Random来填充我们的系列 迭代器我将是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);
形成的最后一步是条形图是使用ChartFactory来创建它 我们必须添加参数上下文,数据集,多重渲染器以及可以是默认或堆叠的类型
chartView = ChartFactory.getBarChartView(getActivity(), dataset, mRenderer, BarChart.Type.DEFAULT);
最后我们添加的是适当视图的图表,在本例中为FrameLayout
(FrameLayout) findViewById(R.id.bar_chart)).addView(chartView);