androidplot setBarWidth [英] androidplot setBarWidth

查看:253
本文介绍了androidplot setBarWidth的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

这是我的第一个问题在这样:

this is my first question in SO:

我在Android应用程序中使用Androidplot 0.6.0。我显示的六个月条形图(每月一杆),在这一点上一切顺利,麻烦的是酒吧的宽度(非常薄的),我想做出更广泛的酒吧为更好的外观。我曾尝试以下内容:

I'm using Androidplot 0.6.0 in an Android app. I'm displaying a bar chart of six months (a bar per month), at this point everything is well, the trouble is the bar's width (very thin), I would like make the bars wider for better appearance. I have tried the following:

XYSeries series1 = new SimpleXYSeries(Arrays.asList(domain), Arrays.asList(range), "Title");
BarFormatter series1Format = new BarFormatter(Color.argb(255,0,0,100), Color.LTGRAY);
plot.addSeries(series1, series1Format);

//plot.addSeries(series1, BarRenderer.class, series1Format); //Not in version 0.6.0 
//BarRenderer barRenderer = (BarRenderer) plot.getRenderer(BarRenderer.class); //This return null
BarRenderer barRenderer = new BarRenderer(plot);
if(barRenderer != null) {
   barRenderer.setBarWidthStyle(BarRenderer.BarWidthStyle.FIXED_WIDTH);
   barRenderer.setBarWidth(100); //This don't take effect
}

结果始终是在setBarWidth任何值()是一样的。

The result always is the same for whatever value in setBarWidth().

先谢谢了。

推荐答案

试试这个

 BarRenderer renderer = (BarRenderer) plot.getRenderer(BarRenderer.class);
    renderer.setBarWidth(20);

更新

试试这个,让乌尔格式化和渲染器。

Try this, make ur formatter and renderer.

class MyBarFormatter extends BarFormatter {
        public MyBarFormatter(int fillColor, int borderColor) {
            super(fillColor, borderColor);
        }

        @Override
        public Class<? extends SeriesRenderer> getRendererClass() {
            return MyBarRenderer.class;
        }

        @Override
        public SeriesRenderer getRendererInstance(XYPlot plot) {
            return new MyBarRenderer(plot);
        }
    }

    class MyBarRenderer extends BarRenderer<MyBarFormatter> {

        public MyBarRenderer(XYPlot plot) {
            super(plot);
        }

        protected MyBarFormatter getFormatter(int index, XYSeries series) {
            return getFormatter(series);
        }
    }

现在

MyBarRenderer renderer = ((MyBarRenderer) plot.getRenderer(MyBarRenderer.class));
    renderer.setBarWidthStyle(BarRenderer.BarWidthStyle.FIXED_WIDTH);
    renderer.setBarWidth(20);

这篇关于androidplot setBarWidth的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆