Search in sources :

Example 11 with IFormatterTextCallBack

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

the class BarChart11View method chartRender.

private void chartRender() {
    try {
        // 设置绘图区默认缩进px值,留置空间显示Axis,Axistitle....
        int[] ltrb = getBarLnDefaultSpadding();
        chart.setPadding(ltrb[0] + DensityUtil.dip2px(this.getContext(), 40), ltrb[1] + DensityUtil.dip2px(this.getContext(), 10), ltrb[2], ltrb[3]);
        // 标题
        chart.setTitle("Cloud Computing Services\n(SOHO/SMB) - Overall Scores");
        // chart.addSubtitle("(XCL-Charts Demo)");
        chart.setTitleAlign(XEnum.HorizontalAlign.CENTER);
        // 数据源
        chart.setDataSource(chartData);
        chart.setCategories(chartLabels);
        // 数据轴
        chart.getDataAxis().setAxisMax(8);
        chart.getDataAxis().setAxisMin(6);
        chart.getDataAxis().setAxisSteps(1);
        chart.getDataAxis().hideAxisLine();
        chart.getDataAxis().hideTickMarks();
        chart.getCategoryAxis().hideTickMarks();
        chart.getDataAxis().setVerticalTickPosition(XEnum.VerticalAlign.TOP);
        chart.getCategoryAxis().setVerticalTickPosition(XEnum.VerticalAlign.TOP);
        chart.setChartDirection(XEnum.Direction.HORIZONTAL);
        chart.setDataAxisLocation(XEnum.AxisLocation.TOP);
        // 定义数据轴标签显示格式
        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.0");
                String label = df.format(tmp).toString();
                return (label);
            }
        });
        // 设定格式
        chart.setItemLabelFormatter(new IFormatterDoubleCallBack() {

            @Override
            public String doubleFormatter(Double value) {
                // TODO Auto-generated method stub
                DecimalFormat df = new DecimalFormat("#0.0");
                String label = df.format(value).toString();
                return label;
            }
        });
        // 隐藏Key
        chart.getPlotLegend().hide();
        // 提高性能
        chart.disableHighPrecision();
        chart.setApplyBackgroundColor(true);
        chart.setBackgroundColor(Color.BLACK);
        chart.getDataAxis().getTickLabelPaint().setColor(Color.WHITE);
        chart.getCategoryAxis().getTickLabelPaint().setColor(Color.WHITE);
        chart.getPlotTitle().getTitlePaint().setColor(Color.WHITE);
        chart.getPlotTitle().getSubtitlePaint().setColor(Color.WHITE);
        chart.getBar().getItemLabelPaint().setColor(Color.WHITE);
        chart.getPlotGrid().getVerticalLinePaint().setColor(Color.rgb(106, 194, 57));
        chart.getPlotGrid().getHorizontalLinePaint().setColor(Color.rgb(106, 194, 57));
        // chart.getPlotGrid().showHorizontalLines();
        chart.getPlotGrid().showVerticalLines();
        chart.getBar().setBarStyle(XEnum.BarStyle.FILL);
        chart.getBar().setItemLabelVisible(true);
        chart.getBar().getItemLabelPaint().setTextSize(22);
        chart.getBar().setItemLabelStyle(XEnum.ItemLabelStyle.INNER);
        chart.getCategoryAxis().getAxisPaint().setColor(Color.rgb(106, 194, 57));
        chart.getDataAxis().setVerticalTickPosition(XEnum.VerticalAlign.TOP);
        chart.ActiveListenItemClick();
    } 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 12 with IFormatterTextCallBack

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

the class AreaChart02View method chartRender.

private void chartRender() {
    try {
        // 设置绘图区默认缩进px值,留置空间显示Axis,Axistitle....
        int[] ltrb = getBarLnDefaultSpadding();
        chart.setPadding(ltrb[0], ltrb[1], ltrb[2], ltrb[3]);
        // 轴数据源
        // 标签轴
        chart.setCategories(mLabels);
        // 数据轴
        chart.setDataSource(mDataset);
        // 仅横向平移
        chart.setPlotPanMode(XEnum.PanMode.HORIZONTAL);
        // 数据轴最大值
        chart.getDataAxis().setAxisMax(100);
        // 数据轴刻度间隔
        chart.getDataAxis().setAxisSteps(10);
        // 网格
        chart.getPlotGrid().showHorizontalLines();
        chart.getPlotGrid().showVerticalLines();
        // 把顶轴和右轴隐藏
        // chart.hideTopAxis();
        // chart.hideRightAxis();
        // 把轴线和刻度线给隐藏起来
        chart.getDataAxis().hideAxisLine();
        chart.getDataAxis().hideTickMarks();
        chart.getCategoryAxis().hideAxisLine();
        chart.getCategoryAxis().hideTickMarks();
        // 标题
        chart.setTitle("平滑区域图");
        chart.addSubtitle("(XCL-Charts Demo)");
        // 轴标题
        chart.getAxisTitle().setLowerTitle("(年份)");
        // 透明度
        chart.setAreaAlpha(180);
        // 显示图例
        chart.getPlotLegend().show();
        // 激活点击监听
        chart.ActiveListenItemClick();
        // 为了让触发更灵敏,可以扩大5px的点击监听范围
        chart.extPointClickRange(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.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.getPlotArea().extWidth(100f);
        // chart.disablePanMode(); //test
        CustomLineData line1 = new CustomLineData("标识线", 60d, Color.RED, 7);
        line1.setCustomLineCap(XEnum.DotStyle.CROSS);
        line1.setLabelHorizontalPostion(Align.CENTER);
        line1.setLabelOffset(15);
        line1.getLineLabelPaint().setColor(Color.RED);
        mCustomLineDataset.add(line1);
        chart.setCustomLines(mCustomLineDataset);
    } catch (Exception e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
        Log.e(TAG, e.toString());
    }
}
Also used : IFormatterTextCallBack(org.xclcharts.common.IFormatterTextCallBack) DecimalFormat(java.text.DecimalFormat) IFormatterDoubleCallBack(org.xclcharts.common.IFormatterDoubleCallBack) CustomLineData(org.xclcharts.chart.CustomLineData)

Example 13 with IFormatterTextCallBack

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

the class BarChart03View method chartRender.

private void chartRender() {
    try {
        // 设置绘图区默认缩进px值,留置空间显示Axis,Axistitle....
        int[] ltrb = getBarLnDefaultSpadding();
        chart.setPadding(ltrb[0], ltrb[1], ltrb[2], ltrb[3]);
        // 标题
        chart.setTitle("小小熊 - 期末考试成绩");
        chart.addSubtitle("(XCL-Charts Demo)");
        // 数据源
        // chart.setDataSource(chartData);
        chart.setCategories(chartLabels);
        chart.setCustomLines(mCustomLineDataset);
        // 图例
        chart.getAxisTitle().setTitleStyle(XEnum.AxisTitleStyle.ENDPOINT);
        chart.getAxisTitle().setLeftTitle("分数");
        chart.getAxisTitle().setLowerTitle("科目");
        chart.getAxisTitle().setCrossPointTitle("(一班)");
        // 数据轴
        chart.getDataAxis().setAxisMax(105);
        chart.getDataAxis().setAxisMin(0);
        chart.getDataAxis().setAxisSteps(5);
        // 指隔多少个轴刻度(即细刻度)后为主刻度
        chart.getDataAxis().setDetailModeSteps(5);
        // 背景网格
        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);
            }
        });
        // 在柱形顶部显示值
        chart.getBar().setItemLabelVisible(true);
        chart.getBar().setBarStyle(XEnum.BarStyle.OUTLINE);
        chart.getBar().setBorderWidth(5);
        chart.getBar().setOutlineAlpha(150);
        // chart.getBar().setBarRoundRadius(5);
        // chart.getBar().setBarStyle(XEnum.BarStyle.ROUNDBAR);
        // chart.setPlotPanMode(XEnum.PanMode.FREE);
        chart.disablePanMode();
        // 设定格式
        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();
        chart.getClipExt().setExtTop(150.f);
        // 柱形和标签居中方式
        chart.setBarCenterStyle(XEnum.BarCenterStyle.TICKMARKS);
    } 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 14 with IFormatterTextCallBack

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

the class MultiBarChart01View method chartRender2.

private void chartRender2() {
    try {
        // 设置绘图区默认缩进px值,留置空间显示Axis,Axistitle....
        int[] ltrb = getBarLnDefaultSpadding();
        chart2.setPadding(mOffset, ltrb[1], ltrb[2], ltrb[3]);
        // 显示边框
        // chart2.showRoundBorder();
        // chart.setApplyBackgroundColor(true);
        chart2.setBackgroundColor(Color.rgb(19, 163, 224));
        chart2.showRoundBorder();
        chart2.getBar().setBarStyle(XEnum.BarStyle.FILL);
        // 标题
        chart2.setTitle("负债率标准: 40%~60%");
        chart2.addSubtitle("(XCL-Charts Demo)");
        chart2.getPlotTitle().getTitlePaint().setColor(axisColor);
        chart2.getPlotTitle().getSubtitlePaint().setColor(axisColor);
        // 数据源
        chart2.setDataSource(chartData2);
        chart2.setCategories(chartLabels);
        // 轴标题
        chart2.getAxisTitle().setLeftTitle("金额");
        chart2.getAxisTitle().setLowerTitle("资产负债率");
        // 数据轴
        chart2.getDataAxis().setAxisMax(2500);
        chart2.getDataAxis().setAxisMin(0);
        chart2.getDataAxis().setAxisSteps(500);
        // 定义数据轴标签显示格式
        chart2.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);
            }
        });
        // 在柱形顶部显示值
        chart2.getBar().setItemLabelVisible(true);
        // 设定格式
        chart2.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;
            }
        });
        // 让柱子间没空白
        chart2.getBar().setBarInnerMargin(0.f);
        // 轴颜色
        chart2.getDataAxis().getAxisPaint().setColor(axisColor);
        chart2.getCategoryAxis().getAxisPaint().setColor(axisColor);
        chart2.getDataAxis().getTickMarksPaint().setColor(axisColor);
        chart2.getCategoryAxis().getTickMarksPaint().setColor(axisColor);
        chart2.getDataAxis().getTickLabelPaint().setColor(axisColor);
        chart2.getCategoryAxis().getTickLabelPaint().setColor(axisColor);
        chart2.getAxisTitle().getLeftTitlePaint().setColor(axisColor);
        chart2.getAxisTitle().getLowerTitlePaint().setColor(axisColor);
        // 隐藏图例
        chart2.getPlotLegend().hide();
    // chart2.showRoundBorder();
    } 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 15 with IFormatterTextCallBack

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

the class RadarChart02View method chartRender.

private void chartRender() {
    try {
        // 设置绘图区默认缩进px值
        int[] ltrb = getPieDefaultSpadding();
        chart.setPadding(ltrb[0], ltrb[1], ltrb[2], ltrb[3]);
        chart.setTitle("圆形雷达图");
        chart.addSubtitle("(XCL-Charts Demo)");
        // 设定数据源
        chart.setCategories(labels);
        chart.setDataSource(chartData);
        // 圆形雷达图
        chart.setChartType(XEnum.RadarChartType.ROUND);
        // 点击事件处理
        chart.ActiveListenItemClick();
        chart.extPointClickRange(30);
        // 数据轴最大值
        chart.getDataAxis().setAxisMax(100);
        // 数据轴刻度间隔
        chart.getDataAxis().setAxisSteps(10);
        // 主轴标签偏移50,以便留出空间用于显示点和标签
        chart.getDataAxis().setTickLabelMargin(20);
        // Color.parseColor("#BFE154"));
        chart.getLinePaint().setColor(Color.rgb(133, 194, 2));
        chart.getLabelPaint().setColor(Color.parseColor("#E94D43"));
        chart.getLabelPaint().setFakeBoldText(true);
        // 定义数据轴标签显示格式
        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.setDotLabelFormatter(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.enablePanMode();
    } 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)

Aggregations

IFormatterTextCallBack (org.xclcharts.common.IFormatterTextCallBack)39 DecimalFormat (java.text.DecimalFormat)33 IFormatterDoubleCallBack (org.xclcharts.common.IFormatterDoubleCallBack)25 PlotGrid (org.xclcharts.renderer.plot.PlotGrid)3 CategoryAxis (org.xclcharts.renderer.axis.CategoryAxis)2 DataAxis (org.xclcharts.renderer.axis.DataAxis)2 Paint (android.graphics.Paint)1 ArrayList (java.util.ArrayList)1 CustomLineData (org.xclcharts.chart.CustomLineData)1 AnchorDataPoint (org.xclcharts.renderer.info.AnchorDataPoint)1 DyLine (org.xclcharts.renderer.info.DyLine)1