![](/img/trans.png)
[英]MPAndroidChart chart vertically resizes on dataset change when x-axis labels are rotated
[英]mpandroidchart X-Axis labels density when zoomed out
我有一个折线图,如下面的照片,我在每个Y轴值上都绘制了X轴标签。 现在,它几乎变得不可能阅读。
我想要的是X轴标签,如下图所示,因此不是每个Y轴值,而是其中的几个,当我放大时,其余的值将动态显示。
我不喜欢guidie,但没有发现有关此问题的任何信息。
编辑:
我的图表选项
ArrayList<ILineDataSet> dataSets = new ArrayList<ILineDataSet>();
dataSets.add(set1);
LineData lineData = new LineData(dataSets);
lineData.setDrawValues(false);
lineData.setHighlightEnabled(true);
chart.setData(lineData);
chart.setMaxVisibleValueCount(3);
// description
Description description = new Description();
description.setTextColor(ColorTemplate.VORDIPLOM_COLORS[2]);
description.setText("");
chart.setDescription(description);
// X-Axis
IAxisValueFormatter formatter = new IAxisValueFormatter() {
@Override
public String getFormattedValue(float value, AxisBase axis) {
return x_data[(int)value];
}
@Override
public int getDecimalDigits() {
return 0;
}
};
chart.getXAxis().setValueFormatter(formatter);
chart.getXAxis().setPosition(XAxis.XAxisPosition.BOTTOM);
chart.getXAxis().setGranularity(1);
//chart.getXAxis().setGranularityEnabled(true);
//Y-Axis
chart.getAxisLeft().setAxisMinimum(0f);
chart.getAxisRight().setAxisMinimum(0f);
// avg line
Cursor avg = dbHelper.getAvg(id);
avg.moveToFirst();
if (avg.moveToFirst()) {
YAxis leftAxis = chart.getAxisLeft();
LimitLine ll = new LimitLine(avg.getFloat(0), "avg");
ll.setLineColor(Color.BLUE);
ll.setLineWidth(0.3f);
ll.setTextColor(Color.BLACK);
ll.setTextSize(6f);
leftAxis.addLimitLine(ll);
}
chart.invalidate();
试试这个: chart.getXAxis().setLabelCount(int count)
添加此行代码
mChart.setMaxVisibleValueCount(6);
它可以帮助您!
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.