如何将自己的值放在x轴和y轴的图形中

时间:2017-02-22 08:55:24

标签: android charts

我必须制作图表,但我能够做到,但我无法更改x轴和y轴的值。

这是我迄今为止开发的

 https://i.stack.imgur.com/W0AvS.png

使用它来创建图表https://github.com/lecho/hellocharts-android

这是代码

 <lecho.lib.hellocharts.view.ColumnChartView
                        android:id="@+id/chart"

                        android:layout_margin="@dimen/activity_horizontal_margin"
                        android:layout_marginTop="50dp"
                        android:layout_width="match_parent"
                        android:layout_height="150dp" />



private void generateDefaultData() {
        int numSubcolumns = 2;
        int numColumns = 6;
        // Column can have many subcolumns, here by default I use 1 subcolumn in each of 7 columns.
        List<Column> columns = new ArrayList<Column>();
        List<SubcolumnValue> values;


        for (int i = 0; i < numColumns; ++i) {

            values = new ArrayList<SubcolumnValue>();
            for (int j = 0; j < numSubcolumns; ++j) {
                if(j==1) {
                    values.add(new SubcolumnValue(2, -13388315));
                }
                else{
                    values.add(new SubcolumnValue(6, -5609780));

                }
                }

            Column column = new Column(values);
          // column.setHasLabels(hasLabels);
          //  column.setHasLabelsOnlyForSelected(hasLabelForSelected);
            columns.add(column);
        }

        data = new ColumnChartData(columns);

        if (hasAxes) {
            Axis axisX = new Axis();
            Axis axisY = new Axis().setHasLines(true);
            if (hasAxesNames) {
                axisX.setName("Days");
                axisY.setName("Y Axis");
            }
            data.setAxisXBottom(axisX);
            data.setAxisYLeft(axisY);
        } else {
            data.setAxisXBottom(null);
            data.setAxisYLeft(null);
        }

        Chart.setColumnChartData(data);
       // prepareDataAnimation();
        //Chart.startDataAnimation();

    }

我想要的是我想让左轴仅显示1,3,5,7和y轴以显示第1天,第2天,第3天第4天,第5天,第6天。我如何实现这一目标?

1 个答案:

答案 0 :(得分:0)

我知道它迟到了。但这是解决方案。 您可以使用AxisValue列表来设置x轴或y轴值

List<AxisValue> axisValues = new ArrayList<>();
Axis axisY = new Axis();

axisValues.add(new AxisValue(0).setLabel("day 1"));
axisY.setValues(axisValues);
data.setAxisYLeft(axisY);