Search in sources :

Example 1 with IFormatterDoubleCallBack

use of org.xclcharts.common.IFormatterDoubleCallBack in project XCL-Charts by xcltapestry.

the class MultiAxisChart01View method renderBar.

/**
		 * 定制柱形顶上的标签格式
		 */
private void renderBar() {
    Bar bar = chart.getBar();
    bar.setItemLabelVisible(true);
    bar.setItemLabelRotateAngle(-90);
    bar.getItemLabelPaint().setFakeBoldText(true);
    chart.setItemLabelFormatter(new IFormatterDoubleCallBack() {

        @Override
        public String doubleFormatter(Double value) {
            // TODO Auto-generated method stub
            // DecimalFormat df=new DecimalFormat("#0.00");
            DecimalFormat df = new DecimalFormat("#0");
            return df.format(value).toString();
        }
    });
}
Also used : Bar(org.xclcharts.renderer.bar.Bar) IFormatterDoubleCallBack(org.xclcharts.common.IFormatterDoubleCallBack) DecimalFormat(java.text.DecimalFormat)

Example 2 with IFormatterDoubleCallBack

use of org.xclcharts.common.IFormatterDoubleCallBack in project XCL-Charts by xcltapestry.

the class BarChart04View method chartRender.

private void chartRender() {
    try {
        //设置绘图区默认缩进px值,留置空间显示Axis,Axistitle....		
        int[] ltrb = getBarLnDefaultSpadding();
        chart.setPadding(ltrb[0], ltrb[1], ltrb[2], ltrb[3]);
        //显示边框
        chart.showRoundBorder();
        //标题
        chart.setTitle("BMI自测");
        chart.addSubtitle("(XCL-Charts Demo)");
        //数据源
        chart.setDataSource(chartData);
        chart.setCategories(chartLabels);
        chart.setCustomLines(mCustomLineDataset);
        //图例
        chart.getAxisTitle().setLeftTitle("参考成年男性标准值");
        chart.getAxisTitle().setLowerTitle("(请不要忽视您的健康)");
        //数据轴
        chart.getDataAxis().setAxisMax(40);
        chart.getDataAxis().setAxisMin(0);
        chart.getDataAxis().setAxisSteps(5);
        //指隔多少个轴刻度(即细刻度)后为主刻度
        chart.getDataAxis().setDetailModeSteps(2);
        //背景网格
        chart.getPlotGrid().showHorizontalLines();
        //定义数据轴标签显示格式
        chart.getDataAxis().setLabelFormatter(new IFormatterTextCallBack() {

            @Override
            public String textFormatter(String value) {
                // TODO Auto-generated method stub		
                Double tmp = Double.parseDouble(value);
                DecimalFormat df = new DecimalFormat("#0");
                String label = df.format(tmp).toString();
                return (label);
            }
        });
        //标签旋转45度
        chart.getCategoryAxis().setTickLabelRotateAngle(45f);
        chart.getCategoryAxis().getTickLabelPaint().setTextSize(15);
        //在柱形顶部显示值
        chart.getBar().setItemLabelVisible(true);
        //设定格式
        chart.setItemLabelFormatter(new IFormatterDoubleCallBack() {

            @Override
            public String doubleFormatter(Double value) {
                // TODO Auto-generated method stub
                DecimalFormat df = new DecimalFormat("#0");
                String label = df.format(value).toString();
                return label;
            }
        });
        //隐藏Key
        chart.getPlotLegend().hide();
        //让柱子间没空白
        //可尝试0.1或0.5各有啥效果噢
        chart.getBar().setBarInnerMargin(0.1f);
        //禁用平移模式
        chart.disablePanMode();
        //提高性能
        chart.disableHighPrecision();
        //柱形和标签居中方式
        chart.setBarCenterStyle(XEnum.BarCenterStyle.TICKMARKS);
        chart.getDataAxis().setAxisLineStyle(XEnum.AxisLineStyle.FILLCAP);
        chart.getCategoryAxis().setAxisLineStyle(XEnum.AxisLineStyle.FILLCAP);
    // chart.showRoundBorder();
    } catch (Exception e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
}
Also used : IFormatterTextCallBack(org.xclcharts.common.IFormatterTextCallBack) DecimalFormat(java.text.DecimalFormat) IFormatterDoubleCallBack(org.xclcharts.common.IFormatterDoubleCallBack)

Example 3 with IFormatterDoubleCallBack

use of org.xclcharts.common.IFormatterDoubleCallBack in project XCL-Charts by xcltapestry.

the class BarChart06View method chartRender.

private void chartRender() {
    try {
        //设置绘图区默认缩进px值,留置空间显示Axis,Axistitle....		
        int[] ltrb = getBarLnDefaultSpadding();
        chart.setPadding(ltrb[0], ltrb[1], ltrb[2], ltrb[3]);
        //显示边框
        chart.showRoundBorder();
        chart.setDataSource(chartData);
        //数据源
        chart.setCategories(chartLabels);
        //数据轴
        chart.getDataAxis().setAxisMax(100);
        chart.getDataAxis().setAxisMin(0);
        chart.getDataAxis().setAxisSteps(5);
        //定义数据轴标签显示格式
        chart.getDataAxis().setLabelFormatter(new IFormatterTextCallBack() {

            @Override
            public String textFormatter(String value) {
                // TODO Auto-generated method stub		
                Double tmp = Double.parseDouble(value);
                DecimalFormat df = new DecimalFormat("#0");
                String label = df.format(tmp).toString();
                return (label);
            }
        });
        //在柱形顶部显示值
        chart.getBar().setItemLabelVisible(true);
        //设定格式
        chart.setItemLabelFormatter(new IFormatterDoubleCallBack() {

            @Override
            public String doubleFormatter(Double value) {
                // TODO Auto-generated method stub
                DecimalFormat df = new DecimalFormat("#0");
                String label = df.format(value).toString();
                return label;
            }
        });
        //让柱子间不留空白
        chart.getBar().setBarInnerMargin(0f);
        //隐藏Key
        chart.getPlotLegend().hide();
        chart.disableHighPrecision();
    } catch (Exception e) {
        // TODO Auto-generated catch block
        Log.e(TAG, e.toString());
    }
}
Also used : IFormatterTextCallBack(org.xclcharts.common.IFormatterTextCallBack) DecimalFormat(java.text.DecimalFormat) IFormatterDoubleCallBack(org.xclcharts.common.IFormatterDoubleCallBack)

Example 4 with IFormatterDoubleCallBack

use of org.xclcharts.common.IFormatterDoubleCallBack in project XCL-Charts by xcltapestry.

the class BarChart07View method chartRender.

@SuppressLint("NewApi")
private void chartRender() {
    try {
        disableHardwareAccelerated();
        //setLayerType(View.LAYER_TYPE_SOFTWARE, null);
        //数据源
        chart.setDataSource(chartData);
        chart.setCategories(chartLabels);
        chart.setCustomLines(mCustomLineDataset);
        //数据轴
        chart.getDataAxis().setAxisMax(40);
        chart.getDataAxis().setAxisMin(0);
        chart.getDataAxis().setAxisSteps(5);
        //指隔多少个轴刻度(即细刻度)后为主刻度
        chart.getDataAxis().setDetailModeSteps(2);
        //背景网格
        chart.getPlotGrid().showHorizontalLines();
        //标签
        chart.getCategoryAxis().getTickLabelPaint().setTextSize(15);
        //在柱形顶部显示值
        chart.getBar().setItemLabelVisible(true);
        //设定格式
        chart.setItemLabelFormatter(new IFormatterDoubleCallBack() {

            @Override
            public String doubleFormatter(Double value) {
                // TODO Auto-generated method stub
                DecimalFormat df = new DecimalFormat("#0");
                String label = df.format(value).toString();
                return label;
            }
        });
        //隐藏图例
        chart.getPlotLegend().hide();
        //让柱子间近似没空白
        //可尝试0.1或0.5各有啥效果噢
        chart.getBar().setBarInnerMargin(0.1f);
        //背景网格颜色
        chart.getPlotGrid().showEvenRowBgColor();
        chart.getPlotGrid().getEvenRowsBgColorPaint().setColor(Color.rgb(225, 230, 246));
        chart.getDataAxis().hide();
        chart.getCategoryAxis().hideTickMarks();
    } catch (Exception e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
}
Also used : IFormatterDoubleCallBack(org.xclcharts.common.IFormatterDoubleCallBack) DecimalFormat(java.text.DecimalFormat) SuppressLint(android.annotation.SuppressLint)

Example 5 with IFormatterDoubleCallBack

use of org.xclcharts.common.IFormatterDoubleCallBack in project XCL-Charts by xcltapestry.

the class BarChart08View method chartRender.

private void chartRender() {
    try {
        //设置绘图区默认缩进px值,留置空间显示Axis,Axistitle....		
        int[] ltrb = getBarLnDefaultSpadding();
        chart.setPadding(ltrb[0], ltrb[1], ltrb[2], ltrb[3]);
        //显示边框
        chart.showRoundBorder();
        //标题
        chart.setTitle("正负背向式图");
        chart.addSubtitle("(XCL-Charts Demo)");
        //数据源
        chart.setDataSource(chartData);
        chart.setCategories(chartLabels);
        chart.setCustomLines(mCustomLineDataset);
        //图例
        //chart.getAxisTitle().setLeftAxisTitle("参考成年男性标准值");
        //chart.getAxisTitle().setLowerAxisTitle("(请不要忽视您的健康)");
        //数据轴
        chart.getDataAxis().setAxisMax(40);
        chart.getDataAxis().setAxisMin(-15);
        chart.getDataAxis().setAxisSteps(5);
        //指隔多少个轴刻度(即细刻度)后为主刻度
        chart.getDataAxis().setDetailModeSteps(2);
        chart.getDataAxis().enabledAxisStd();
        chart.getDataAxis().setAxisStd(5);
        chart.getCategoryAxis().setAxisBuildStd(true);
        //背景网格
        chart.getPlotGrid().showHorizontalLines();
        //定义数据轴标签显示格式
        chart.getDataAxis().setLabelFormatter(new IFormatterTextCallBack() {

            @Override
            public String textFormatter(String value) {
                // TODO Auto-generated method stub		
                Double tmp = Double.parseDouble(value);
                DecimalFormat df = new DecimalFormat("#0");
                String label = df.format(tmp).toString();
                return (label);
            }
        });
        //标签旋转45度
        //	chart.getCategoryAxis().setTickLabelRotateAngle(45f);
        chart.getCategoryAxis().getTickLabelPaint().setTextSize(15);
        //在柱形顶部显示值
        chart.getBar().setItemLabelVisible(true);
        //设定格式
        chart.setItemLabelFormatter(new IFormatterDoubleCallBack() {

            @Override
            public String doubleFormatter(Double value) {
                // TODO Auto-generated method stub
                DecimalFormat df = new DecimalFormat("#0");
                String label = df.format(value).toString();
                return label;
            }
        });
        //隐藏Key
        chart.getPlotLegend().hide();
        //让柱子间没空白
        //可尝试0.1或0.5各有啥效果噢
        chart.getBar().setBarInnerMargin(0.1f);
        //禁用平移模式
        // chart.disablePanMode();
        chart.disableHighPrecision();
        //限制只能左右滑动
        chart.setPlotPanMode(XEnum.PanMode.HORIZONTAL);
        chart.setBarCenterStyle(XEnum.BarCenterStyle.TICKMARKS);
    // chart.showRoundBorder();
    } catch (Exception e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
}
Also used : IFormatterTextCallBack(org.xclcharts.common.IFormatterTextCallBack) DecimalFormat(java.text.DecimalFormat) IFormatterDoubleCallBack(org.xclcharts.common.IFormatterDoubleCallBack)

Aggregations

DecimalFormat (java.text.DecimalFormat)29 IFormatterDoubleCallBack (org.xclcharts.common.IFormatterDoubleCallBack)29 IFormatterTextCallBack (org.xclcharts.common.IFormatterTextCallBack)25 CustomLineData (org.xclcharts.chart.CustomLineData)2 SuppressLint (android.annotation.SuppressLint)1 Paint (android.graphics.Paint)1 ArrayList (java.util.ArrayList)1 CategoryAxis (org.xclcharts.renderer.axis.CategoryAxis)1 Bar (org.xclcharts.renderer.bar.Bar)1 AnchorDataPoint (org.xclcharts.renderer.info.AnchorDataPoint)1 DyLine (org.xclcharts.renderer.info.DyLine)1