android - AchartEngine 中的圆环图半径

标签 android achartengine

我正在尝试在aChartengine中设置圆环图内圆半径和外圆半径,下面是我的代码:

public class MainActivity extends Activity {
    GraphicalView gv;
    RelativeLayout rl;


    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        List<double[]> values1 = new ArrayList<double[]>();

        values1.add(new double[] { 15, 5 });


        gv = createIntent(values1);

        rl = (RelativeLayout) findViewById(R.id.rel);
        rl.addView(gv);    
    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.main, menu);
        return true;
    }

    public GraphicalView createIntent(List<double[]> values1) {

        List<String[]> titles = new ArrayList<String[]>();

        titles.add(new String[] { " ", " " });
        int[] colors = new int[] { Color.BLUE, Color.GREEN };

        DefaultRenderer renderer = buildCategoryRenderer(colors);
        renderer.setApplyBackgroundColor(true);
        renderer.setShowLegend(false);

        renderer.setShowLabels(false);
        renderer.setStartAngle(270);
        renderer.setBackgroundColor(Color.rgb(222, 222, 200));
        renderer.setLabelsColor(Color.GRAY);



        return ChartFactory.getDoughnutChartView(MainActivity.this,
                buildMultipleCategoryDataset("Project budget", titles, values1),
                renderer);
    }

    protected MultipleCategorySeries buildMultipleCategoryDataset(String title,
            List<String[]> titles, List<double[]> values) {
        MultipleCategorySeries series = new MultipleCategorySeries(title);
        int k = 0;
        for (double[] value : values) {
            series.add(2007 + k + "", titles.get(k), value);
            k++;
        }
        return series;
    }

    protected DefaultRenderer buildCategoryRenderer(int[] colors) {
        DefaultRenderer renderer = new DefaultRenderer();
        renderer.setLabelsTextSize(15);
        renderer.setLegendTextSize(15);
        renderer.setMargins(new int[] { 20, 30, 15, 0 });
        for (int color : colors) {
            SimpleSeriesRenderer r = new SimpleSeriesRenderer();
            r.setColor(color);
            renderer.addSeriesRenderer(r);
        }
        return renderer;
    }

但是我有浏览器设置半径的查询,在许多搜索中我在 Canvas 上找到了半径,但在我的情况下我没有 Canvas 。

谁能告诉我如何在我的代码中设置半径?

最佳答案

renderer.setScale((flaot)1.3) 解决了我的问题,但内半径和外半径大约不完美。

关于android - AchartEngine 中的圆环图半径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23749304/

相关文章:

android - "cannot find symbol method metafactory"使用 Lambda

java - 在抽屉外单击时,Android 抽屉导航不会关闭(主要 Activity 中的一个 fragment )

Java公历转特定格式

Android:如何在图表引擎下创建列表?

android - 如何在图表引擎中的 x 轴上做时间

java - Achartengine 的饼图不会从重绘功能刷新

java - Android JavaScript 与 Java 性能对比

android - 如何从异步任务中获取对当前窗口的引用?安卓

android - AChartEngine的Dial Chart如何设置刻度线的颜色

android - 如何更改放置在启动器屏幕中的应用程序名称