这是关于以下条款:https://github.com/PhilJay/MPAndroidChart/wiki/Setting-Data在条形图标题下。在下面的给定代码中:
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.fragment_graph_test, container, false);
BarChart chart = view.findViewById(R.id.bar_Chart_test);
List<BarEntry> entries = new ArrayList<>();
entries.add(new BarEntry(0f, 30f));
entries.add(new BarEntry(1f, 80f));
entries.add(new BarEntry(2f, 60f));
entries.add(new BarEntry(3f, 50f));
// gap of 2f
entries.add(new BarEntry(5f, 70f));
entries.add(new BarEntry(6f, 60f));
BarDataSet set = new BarDataSet(entries, "BarDataSet");
BarData data = new BarData(set);
data.setBarWidth(0.9f); // set custom bar width
chart.setData(data);
chart.setFitBars(true); // make the x-axis fit exactly all bars
chart.invalidate(); // refresh
return view;
}
产出是:
此处不显示X值。点击这里查看截图
如何将X轴值设置为月份(1月1日,1月2日,1月3日...),如文章中所示。
对于中国网站首页:v3.0.3
我使用的是标签列表:
final List list_x_axis_name = new ArrayList<>();
list_x_axis_name.add("label1");
list_x_axis_name.add("label2");
list_x_axis_name.add("label3");
list_x_axis_name.add("label4");
list_x_axis_name.add("label5");
像这样设置标签:
BarChart chartBar = (BarChart) findViewById(R.id.chartBar);
XAxis xAxis = chartBar.getXAxis();
xAxis.setGranularity(1f);
xAxis.setCenterAxisLabels(true);
xAxis.setLabelRotationAngle(-90);
xAxis.setValueFormatter(new IAxisValueFormatter() {
@override
public String getFormattedValue(float value, AxisBase axis) {
if (value >= 0) {
if (value <= list_x_axis_name.size() - 1) {
return list_x_axis_name.get((int) value);
}
return "";
}
return "";
}
});
科特林:
val xAxisLabels = listOf("1", "2", "3", "4", "5", "6" ...)
barChartView.xAxis.valueFormatter = IndexAxisValueFormatter(xAxisLabels)
爪哇岛:
ArrayList<String> xAxisLables = new ArrayList();
xAxisLables.add("1");
xAxisLables.add("2");
xAxisLables.add("3");
xAxisLables.add("4"); ...
OR
String[] xAxisLables = new String[]{"1","2", "3", "4" ...};
barChartView.getXAxis().setValueFormatter(new IndexAxisValueFormatter(xAxisLables));
您可以准备要在< code>xAxisLabels中显示的任何数据
您只需制作一个简单的字符串列表,如下所示:
final ArrayList<String> xAxisLabel = new ArrayList<>();
xAxisLabel.add("Mon");
xAxisLabel.add("Tue");
xAxisLabel.add("Wed");
xAxisLabel.add("Thu");
xAxisLabel.add("Fri");
xAxisLabel.add("Sat");
xAxisLabel.add("Sun");
然后你这样做:
XAxis xAxis = chart.getXAxis();
xAxis.setValueFormatter(new ValueFormatter() {
@Override
public String getFormattedValue(float value, AxisBase axis) {
return xAxisLabel.get((int) value);
}
});
希望这有帮助。
我一直试图弄清楚,并阅读了许多帖子。但是我无法在MPAndroid的条形图中设置标签到x轴。目前它正在显示条的位置。
我的x轴值没有对齐。我应该修改什么设置? x轴未对齐 下面是我到目前为止在代码中使用的。setLabelsToSkip将无法工作,因为我使用的是3.0.1版。 这是我的标签格式化程序类: 以下是我的主要活动setdata方法: 在我的主要活动中,我像这样使用它:
我正在使用MPAndroidChart在我的android项目中绘制折线图,我看到X轴上的标签没有正确对齐,如下图所示。 未对齐标签
我的线条怎样才能整齐又不太侧身?
我刚刚开始学习为Android编码和开发。 现在,我正在尝试这样做:Project Fi App UI然而,我在MPAndroidChart库中找不到参数或方法来设置条形图(或我正在使用的水平条形图)中条形图的比例。条形图中的条形图只是自动决定其比例。我想要的是一个固定的Y轴最大范围,图中条形的比例根据其值而变化。 另一个问题是,我无法摆脱每个酒吧上的标签。我写道 但条的右边仍然有一个值。 包含条
我试图让x轴标签在柱状图上旋转45度,但没有成功。这是我下面的代码: