当前位置:   article > 正文

自定义柱状图--AAChartCore

aachartcore

效果图

传送门

https://github.com/AAChartModel/AAChartCore

参数文档

https://api.highcharts.com.cn

https://www.highcharts.com.cn/docs/column-and-bar-charts

安装

1. 下载Demo AAChartCoreDemo

2. 将Demo中的名为 AAChartCoreLib 和 assets 的文件夹拖入项目中

使用

1. 在xml文件中使用 AAChartView 布局

  1. <com.example.anan.AAChartCore.AAChartCoreLib.AAChartCreator.AAChartView
  2. android:id="@+id/chart"
  3. android:layout_width="match_parent"
  4. android:layout_marginHorizontal="@dimen/dp_10"
  5. android:layout_height="wrap_content"/>

2. 在java文件中使用

  1. AAChartView chart = getViewById(R.id.chart);
  2. //需要先设置AAChartView的宽高才能往里面填充数据
  3. if(item.getList().size() < 4){
  4. //如果数据小于4,将高度固定500px
  5. chart.getLayoutParams().height = 500;
  6. }else {
  7. //如果数据大于等于4,根据数据量动态设置高度
  8. chart.getLayoutParams().height = item.getList().size() * 50 + 140;
  9. }
  10. chart.aa_drawChartWithChartModel(getChartModel(item));

3. 配置 ChartModel 参数

  1. private AAChartModel getChartModel(RegionalCompareBean.TitleList item){
  2. String[] title = new String[item.getList().size()];//x轴的显示的数据
  3. Object[] value = new Object[item.getList().size()];//y轴的显示的数据
  4. if(item != null){
  5. for(int i = 0; i < item.getList().size(); i++){
  6. title[i] = item.getList().get(i).getTitle();
  7. value[i] = Float.parseFloat(item.getList().get(i).getItem());
  8. }
  9. }
  10. AAChartModel aaChartModel = new AAChartModel()
  11. .chartType(AAChartType.Column) //设置显示类型是柱状图
  12. .inverted(true) //X轴Y轴互换
  13. .dataLabelsEnabled(true) //柱状图上数据是否显示
  14. .yAxisVisible(true) //Y轴是否显示
  15. .tooltipEnabled(false) //点击柱状图是否提示
  16. .xAxisReversed(true) //x轴数据是否反转
  17. .xTickLength(10f) //x 轴刻度线长度
  18. .xTickWidth(1f) //x 轴刻度线宽度
  19. .xTickColor("#333333") //x 轴刻度线颜色
  20. .xLineColor("#333333") //x 轴线颜色
  21. .yAxisLineWidth(1f) //y 轴轴线的宽度
  22. .yRotation(-30f) //y 轴标签旋转角度
  23. .yAxisReversed(false) //y 轴是否翻转
  24. .yAxisMin(0f)
  25. .yTickLength(10f) //y 轴刻度线长度
  26. .yTickWidth(1f) //y 轴刻度线宽度
  27. .yTickAmount(6) //y 轴刻度线总数
  28. .yTickColor("#333333") //y 轴刻度线颜色
  29. .yLineColor("#333333") //y 轴线颜色
  30. .yAxisGridLineWidth(0.5f) //y 轴网格线的宽度
  31. .yAxisAllowDecimals(true) //y 轴是否允许显示小数
  32. .legendEnabled(false) //是否显示图例
  33. .axesTextColor("#333333") //x 轴和 y 轴文字颜色
  34. .colorsTheme(new String[]{"#1a82f5"}) //图表主题颜色数组,多个颜色值按顺序显示
  35. .yAxisTitle("") //y 轴标题
  36. .title("") //主标题内容
  37. .subtitle("") //副标题内容
  38. .categories(title) //x轴上显示的数据
  39. .series(new AASeriesElement[]{
  40. new AASeriesElement()
  41. .data(value) //y 轴上显示的数据
  42. .colorByPoint(true) //y 轴上是否根据colorsTheme显示多个不同颜色
  43. });
  44. return aaChartModel;
  45. }

下面是我根据github上面下载并根据自己需求修改的包

https://download.csdn.net/download/Snow_Ice_Yang/18908583

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/2023面试高手/article/detail/365045
推荐阅读
相关标签
  

闽ICP备14008679号