2017-02-22 79 views
0

我必须做图,我能够做但我不能改变x和y轴的价值。如何把自己的价值放在图中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天。我该如何实现这一目标?

回答

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); 
+0

**从审批队列中**:我可以请你,请添加在你的答案一些更多的上下文。仅有代码的答案很难理解。如果您可以在帖子中添加更多信息,它可以帮助提问者和未来的读者。 – RBT