示例#1
0
 /*设置量表对齐*/
 private void setOffset() {
   float lineLeft = combinedchart.getViewPortHandler().offsetLeft();
   float barLeft = barChart.getViewPortHandler().offsetLeft();
   float lineRight = combinedchart.getViewPortHandler().offsetRight();
   float barRight = barChart.getViewPortHandler().offsetRight();
   float barBottom = barChart.getViewPortHandler().offsetBottom();
   float offsetLeft, offsetRight;
   float transLeft = 0, transRight = 0;
   /*注:setExtraLeft...函数是针对图表相对位置计算,比如A表offLeftA=20dp,B表offLeftB=30dp,则A.setExtraLeftOffset(10),并不是30,还有注意单位转换*/
   if (barLeft < lineLeft) {
     /* offsetLeft = Utils.convertPixelsToDp(lineLeft - barLeft);
     barChart.setExtraLeftOffset(offsetLeft);*/
     transLeft = lineLeft;
   } else {
     offsetLeft = Utils.convertPixelsToDp(barLeft - lineLeft);
     combinedchart.setExtraLeftOffset(offsetLeft);
     transLeft = barLeft;
   }
   /*注:setExtraRight...函数是针对图表绝对位置计算,比如A表offRightA=20dp,B表offRightB=30dp,则A.setExtraLeftOffset(30),并不是10,还有注意单位转换*/
   if (barRight < lineRight) {
     /*  offsetRight = Utils.convertPixelsToDp(lineRight);
     barChart.setExtraRightOffset(offsetRight);*/
     transRight = lineRight;
   } else {
     offsetRight = Utils.convertPixelsToDp(barRight);
     combinedchart.setExtraRightOffset(offsetRight);
     transRight = barRight;
   }
   barChart.setViewPortOffsets(transLeft, 15, transRight, barBottom);
 }