JSONArray jsonArray = new JSONArray(result);
int length = jsonArray.length();
ArrayList<BarEntry> entries = new ArrayList<BarEntry>();
ArrayList<String> labels = new ArrayList<String>();
for (int i = 0; i < length; i++) {
entries.add(new BarEntry(Float.parseFloat(jsonArray.getJSONObject(i).getString("Potentials")), i));
labels.add(jsonArray.getJSONObject(i).getString("Name"));
}
BarChart chart = new BarChart(PotentialbySourceActivity.this);
BarDataSet dataset = new BarDataSet(entries, "# of Calls");
setContentView(chart);
BarData data = new BarData(labels, dataset);
chart.setData(data);
chart.setDragEnabled(true); // on by default
chart.setVisibleXRange(1,5);
chart.setHorizontalScrollBarEnabled(true);
chart.setDescription(""); // Hide the description
chart.getAxisLeft().setDrawLabels(true);
chart.getAxisRight().setDrawLabels(true);
chart.getXAxis().setDrawLabels(true);
Toast.makeText(PotentialbySourceActivity.this,"test",Toast.LENGTH_LONG).show();
chart.getLegend().setEnabled(true);
chart.setDescription("# of Industry");
dataset.setColors(ColorTemplate.COLORFUL_COLORS);
我正在使用JSONArray来填充我的MPAndroid条形图。但是酒吧没有与他们的标签对齐。就像this任何人都可以帮助我做些什么来将条形与相应的标签对齐?
答案 0 :(得分:0)
在我的情况下,XAxis上的标签之间有很多空格,并没有显示所有标签。以下属性解决了这个问题。
xAxis.setLabelsToSkip(0);
这可确保显示所有标签并使标签与条形对齐。然后,您可以相应地修剪标签字符。
答案 1 :(得分:0)
我使用的是2.1.6版本,没有与标签对齐的问题。请按照以下示例更换条形图和标签:
BarChart chart = (BarChart) findViewById(R.id.chart1);
ArrayList<BarEntry> entries = new ArrayList<>();
entries.add(new BarEntry(4f, 0));
entries.add(new BarEntry(8f, 1));
entries.add(new BarEntry(6f, 2));
entries.add(new BarEntry(12f, 3));
entries.add(new BarEntry(18f, 4));
entries.add(new BarEntry(9f, 5));
ArrayList<String> labels = new ArrayList<String>();
labels.add("January");
labels.add("February");
labels.add("March");
labels.add("April");
labels.add("May");
labels.add("June");
BarDataSet dataset = new BarDataSet(entries, "# of Calls");
BarData data = new BarData(labels, dataset);
chart.getXAxis().setPosition(XAxis.XAxisPosition.BOTTOM);
chart.setData(data);