Hellocharts框架使用

Hellocharts框架是android的第三方好用的圖表庫(kù)。
1、Gradle導(dǎo)入

compile 'com.github.lecho:hellocharts-android:v1.5.8'

2、因?yàn)槲沂褂玫氖荓ineChartView,其他的類推
初始化工作

@Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_my_level);

        abilityChart = (LineChartView) findViewById(R.id.abilityChart);
        myRankChart = (LineChartView) findViewById(R.id.myRankChart);

        getAxisXLables();//獲取X軸標(biāo)注
        initTheatLineChart();
    }

getAxisLables

//x軸的顯示
    private void getAxisXLables(){
        for (int i=0;i<date.length;i++){
            mAxisXValuesList.add(new AxisValue(i).setLabel(date[i]));
        }
    }
 //初始化abilityLineChart的設(shè)置
    private void initTheatLineChart() {

        getAxisPoints();//獲取坐標(biāo)點(diǎn)

        Line line = new Line(mTheatPointValuesList).setColor(Color.parseColor("#E9967A")).setCubic(true);//折線的顏色
        List<Line> lines = new ArrayList<>();
        line.setShape(ValueShape.CIRCLE);//折線圖上每個(gè)數(shù)據(jù)點(diǎn)的形狀
        line.setCubic(true);//曲線是否平滑
        line.setFilled(true);//是否填充曲線的面積
        //line.setHasLabels(true);//曲線的數(shù)據(jù)坐標(biāo)是否加上備注
        line.setHasLabelsOnlyForSelected(true);//點(diǎn)擊坐標(biāo)顯示數(shù)據(jù)
        line.setHasLines(true);//是否用直線顯示
        line.setHasPoints(true);//是否顯示原點(diǎn)
        lines.add(line);
        LineChartData data = new LineChartData();
        data.setLines(lines);

        //坐標(biāo)軸
        Axis axisX = new Axis();//x軸
        axisX.setHasTiltedLabels(false);//X軸下面坐標(biāo)軸字體是斜的顯示還是直的顯示,true是斜的顯示
        axisX.setTextColor(Color.WHITE);
        axisX.setTextColor(Color.parseColor("#336699"));//灰色

        axisX.setName("能力曲線");//表格名稱
        axisX.setTextSize(20);//設(shè)置字體的大小
        axisX.setMaxLabelChars(7);//最多幾個(gè)X軸坐標(biāo),意思就是你的縮放讓X軸上數(shù)據(jù)的個(gè)數(shù)7<=x<=mAxisValues.length
        axisX.setValues(mAxisXValuesList);//填充X軸的坐標(biāo)名稱
        data.setAxisXBottom(axisX);//X軸在底部

        Axis axisY = new Axis();//Y軸
        axisY.setName("");//Y軸標(biāo)注
        axisY.setHasLines(true);
        axisY.setTextSize(11);
        axisY.setTextColor(Color.parseColor("#336699"));
        data.setAxisYLeft(axisY);//Y軸設(shè)置在左邊

        abilityChart.setInteractive(true);
        abilityChart.setZoomType(ZoomType.HORIZONTAL);//縮放類型
        abilityChart.setMaxZoom((float)3);//縮放比例
        abilityChart.setLineChartData(data);
        //abilityChart.setVisibility(View.VISIBLE);

        Viewport v = new Viewport(abilityChart.getMaximumViewport());
        v.left = 0;
        v.right = 7;
        abilityChart.setCurrentViewport(v);
    }
//能力曲線的每個(gè)點(diǎn)的顯示
    private void getAxisPoints() {
        for (int i=0;i<score.length;i++){
            mTheatPointValuesList.add(new PointValue(i,(float)theat[i]));
        }
    }
String[] date = {"5-23","5-24","5-25","5-26","5-27","5-28","5-29","5-30","5-31","6-1","6-2","6-3"};//X軸的標(biāo)注
    double[] theat = {2.3,1.98,2.02,1.68,1.84,1.96,2.10,2.06,2.08,2.11,2.09,2.11};//能力曲線點(diǎn)數(shù)據(jù)
    private List<PointValue> mTheatPointValuesList = new ArrayList<>();
    private List<AxisValue> mAxisXValuesList = new ArrayList<>();
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Android 自定義View的各種姿勢(shì)1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 178,872評(píng)論 25 709
  • 放暑假了,老師布置了很多作業(yè),我最感興趣的是做菜。老師說我們都會(huì)長(zhǎng)大,都要成長(zhǎng),所以我們要增強(qiáng)自我管理能...
    崔嘉益閱讀 539評(píng)論 0 2
  • 我在江南, 在煙雨婆娑的夢(mèng)里, 等你, 你來(lái)了, 我隔著細(xì)雨, 聽見了你的呼吸, 我踏著青石板, 瞥見了你的衫衣。...
    鵝絨染雪閱讀 231評(píng)論 0 3
  • 生活中離不開溫馨浪漫的情調(diào),“知性知行 愛有一套”,乍看怎么也不像計(jì)劃生育服務(wù)行業(yè)的一條宣傳標(biāo)語(yǔ),相信構(gòu)思這句話的...
    蘭若9788閱讀 657評(píng)論 0 1

友情鏈接更多精彩內(nèi)容