docs: protected void drawBars(Canvas _Canvas) {
  
          RectF  bounds;
          String valueString;
          float  animatedRightOffset;
  
          for (BarModel model : mData) {
              bounds              = model.getBarBounds();
              valueString         = Utils.getFloatString(model.getValue(), mShowDecimal) + mValueUnit;
              animatedRightOffset = bounds.right * mRevealValue;
  
              mGraphPaint.setColor(model.getColor());
  
              _Canvas.drawRect(
                      bounds.left,
                      bounds.top,
                      bounds.right * mRevealValue,
                      bounds.bottom, mGraphPaint);
  
              if (mShowValues && animatedRightOffset > mValuePaint.measureText(valueString)) {
                  mValuePaint.setColor(mLegendColor);
                  _Canvas.drawText(
                          valueString,
                          bounds.left + mValueDistance,
                          bounds.centerY() + (mMaxFontHeight / 2),
                          mValuePaint
                  );
              }
  
              if (mShowBarLabel) {
                  mValuePaint.setColor(mBarLabelColor);
                  _Canvas.drawText(
                          model.getLegendLabel(),
                          animatedRightOffset + mValueDistance,
                          bounds.centerY() + (mMaxFontHeight / 2),
                          mValuePaint
                  );
              }
          }
      }