本期记录一下图表的一般设置和图表样式设置以及特定图表的设置
刷新
这两个方法要一起使用才会更新图表(其实很多时候只需要调动一下图表的动画就可以实现更新)
- invalidate() —— 在图表上调用此方法将刷新(重画)它。
- notifyDataSetChanged() —— 让图表知道它的底层数据已经改变,并执行必要的重新计算(偏移、图例、极大值、最小值、…)
记录日志
setLogEnabled(boolean enabled) —— 设置为true时将激活图表日志输出。启用此功能会影响性能,没必要的情况下保持禁用状态。
通用图表样式设置
这些方法可以直接在图表上使用(也就是就是图表本身的方法)
- setBackgroundColor(int color) —— 设置涵盖整个图表视图的背景色。也可以通过.xml在布局文件中设置。
- setDescription(String desc) —— 设置显示在图表右下角的描述文本。
- setDescriptionColor(int color) —— 设置描述文本的颜色。
- setDescriptionPosition(float x, float y) —— 设置屏幕上以像素为单位的描述文本的自定义位置。
- setDescriptionTypeface(Typeface t) —— 设置描述文本字体。
- setDescriptionTextSize(float size) —— 设置描述文本的大小,以像素为单位,最小为6f,最大为16f。
- setNoDataText(String text) —— 设置在图表为空时应显示的文本。
- setDrawGridBackground(boolean enabled) —— 如果启用,图表绘制区域后面的背景矩形将被绘制.
- setGridBackgroundColor(int color) —— 设置网格背景应使用的颜色。
- setDrawBorders(boolean enabled) —— 启用/禁用绘制图表边框(围绕图表的线条)。
- setBorderColor(int color) —— 设置图表边框的颜色。
- setBorderWidth(float width) —— 设置图表边框的宽度。
- setMaxVisibleValueCount(int count) —— 设置图表上的最大可视绘制值标签个数。这只在setDrawValues()启用时有效。
图表的特性设置
上面讲的都是适用于所有图表类型的方法,这里是讲各个图表的特定设置
Line-, Bar-, Scatter-, Candle- & BubbleChart
- setAutoScaleMinMaxEnabled(boolean enabled) —— 设置是否启用y轴自动缩放的标志。如果启用,y轴将自动调整到当前x轴范围的最小和最大y值,只要视图改变。这对于显示金融数据的图表尤其有用。默认值:false
- setKeepPositionOnRotation(boolean enabled) —— 设置图表是否应在改变方向后保持其位置(缩放/滚动)。默认值:false
BarChart
- setDrawValueAboveBar(boolean enabled) —— 如果设置为true,则所有值都绘制在它们的条形图之上,而不是在其顶部下面。
- setDrawBarShadow(boolean enabled) —— 如果设置为true,则在指示最大值的每个栏后面绘制灰色区域。但性能会下降约40%。
- setDrawValuesForWholeStack(boolean enabled) —— 如果设置为true,则所有堆叠条的值都会单独绘制,而不仅仅是它们的总和。
- setDrawHighlightArrow(boolean enabled) —— 设置为true,在高亮显示时将高亮箭头绘制在每个条形图上方。
PieChart
- setDrawSliceText(boolean enabled) —— 将其设置为true,将x值文本绘制到饼图中。
- setUsePercentValues(boolean enabled) —— 如果启用,图表中的值是以百分比绘制的,而不是用原始值绘制的。
- setCenterText(SpannableString text) —— 设置在分段中间绘制的文本。较长的文本将自动“包装”,以避免剪裁到饼图。
- setCenterTextRadiusPercent(float percent) —— 将中间文本的边框的矩形半径设置为饼孔默认为1.f(100%)的百分比。
- setHoleRadius(float percent) —— 以最大半径的百分比(max=整个图表的半径)设置分段中心的孔半径,默认为50%。
- setTransparentCircleRadius(float percent) —— 以最大半径的百分比(max=整个图表的半径)为单位,设置在圆孔旁边绘制的透明圆的半径,默认为55%->意味着默认情况下比中心孔大5%。
- setTransparentCircleColor(int color) —— 设置透明圆圈的颜色。
- setTransparentCircleAlpha(int alpha) —— 设置透明圈应该具有的透明度(0-255)。
- setMaxAngle(float maxangle) —— 设置用于设置饼圆的最大角度。360f 意味着它是一个满的PieChart,180f的结果是半饼图。默认:360f
RandarChart
- setSkipWebLineCount(int count) —— 允许跳过来自图表中心的网格线。一般在网格线很密集的时候使用
- 本文作者: Android YU
- 本文链接: http://yoursite.com/2020/03/19/MPAndroidChart的详细使用——图表的设置and图表样式设置/
- 版权声明: 本博客所有文章除特别声明外,均采用 MIT 许可协议。转载请注明出处!