[英]Is there a way I can get the Bar Width in px/dp's of an MP Android BarChart?
以像素為單位的條寬是條寬 x 位置 (wp) 與標簽起始位置 (xp) 之間的差值:
Transformer transformer = bChart.getTransformer(YAxis.AxisDependency.LEFT);
float bw = (float) transformer.getPixelForValues(bChart.getBarData().getBarWidth(), 0).x;
float xp = (float) transformer.getPixelForValues(0, 0).x;
float barWidthInPixels = bw - xp;
從javadoc可以看出, BarData#getBarWidth()
以圖表值(不是以像素為單位)返回條形寬度。
您可以使用Transformer
在圖表值(圖表上的x和y值)和像素值(針對Android手機的屏幕)之間進行Transformer
。 類似於以下內容:
float barWidth = barData.getBarWidth();
Transformer transformer = mChart.getViewPortHandler().getTransformer(AxisDependency.LEFT);
MPPointD barDimensPoint = transformer.getPixelForValues(barWidth, 0);
float barWidthInPixels = (float) barDimensPoint.x;
它本質上是與這個問題相反的操作,其中要求是將像素轉換為圖表上的值。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.