【问题标题】:How to remove unnecessary space between bars in AchartEngine?如何在 AchartEngine 中删除条之间不必要的空间?
【发布时间】:2013-02-14 13:18:30
【问题描述】:

它只是在每个条之间增加了不必要的空间。我如何减少或删除它?所有数据都是动态生成的。我尝试设置条形宽度,但它不起作用..

请看附图..

更新代码

        XYMultipleSeriesRenderer mRenderer = new XYMultipleSeriesRenderer();
        mRenderer.setXLabelsColor(Color.BLUE);
        mRenderer.setYLabelsColor(0, Color.BLUE);
        mRenderer.setScale(0.5f);
        mRenderer.setBarSpacing(0.5f);
        mRenderer.setBarWidth(75);
        mRenderer.setAxisTitleTextSize(10);

        mRenderer.setXLabelsAlign(Align.CENTER);
        mRenderer.setYLabelsAlign(Align.RIGHT);

        mRenderer.setMargins(new int[] { 20, 30, 20, 0 });
        mRenderer.setXTitle("Categories");
        mRenderer.setYTitle("Amount");

        for (int j = 0; j < availCatList.size(); j++) {

            mRenderer.addXTextLabel(j + 1, availCatList.get(j));
        }

        mRenderer.setXLabels(0);

        mRenderer.setChartTitle("Bar Chart");

        XYMultipleSeriesDataset dataset = new XYMultipleSeriesDataset();

        for (int i = 0; i < availCatList.size(); i++) {

            XYSeries series = new XYSeries(availCatList.get(i));

            series.add(i + 1, mTotal.get(i));

            dataset.addSeries(series);

            XYSeriesRenderer seriesRenderer = new XYSeriesRenderer();

            seriesRenderer.setChartValuesSpacing(0.5f);
            seriesRenderer.setChartValuesTextAlign(Align.CENTER);
            seriesRenderer.setChartValuesTextSize(10.0f);
            seriesRenderer.setDisplayChartValues(true);

            Random r = new Random();
            int color = Color.argb(255, r.nextInt(256), r.nextInt(256),
                    r.nextInt(256));

            seriesRenderer.setColor(color);

            mRenderer.addSeriesRenderer(seriesRenderer);
        }

           view = ChartFactory.getBarChartView(this, dataset, mRenderer,
                Type.DEFAULT);

          layout.addView(view);

任何帮助将不胜感激..

【问题讨论】:

  • " 我尝试设置条形宽度,但它不起作用.." 我不知道它不起作用是什么意思。
  • 我的意思是即使设置了条形宽度,不必要的空间仍然存在..
  • 将其设置为更大的值。
  • 为什么在 x 轴范围有 0.5 的差距,我认为这是问题的原因.. 你不这么认为吗?
  • 将条形宽度设置为更大的值,不起作用:(

标签: android achartengine


【解决方案1】:

当每个系列只有一个项目时,您可以使用renderer.setBarWidth(width),其中value 可能类似于(screenWidth - leftMargin - rightMargin) / seriesCount

【讨论】:

【解决方案2】:

尝试使用:

mRenderer.setBarSpacing(0.0f);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-05-06
    • 1970-01-01
    相关资源
    最近更新 更多