2012-10-05 88 views
3

我試過各種鏈接張貼在SO,但沒有得到可靠的答案。如何使用AchartEngine在折線圖中的x軸上設置日期?

這裏是我的代碼:

TimeSeries series = new TimeSeries("Burned Calories"); 

    for (int i = 0; i < x_axis.size(); i++) { 

      String date = x_axis.get(i); 

      int y = Integer.parseInt(y_axis.get(i)); 

      Date d; 

      try { 

        d = df.parse(date); 

        series.add(d, y); 

      } catch (ParseException e) { 
        // TODO Auto-generated catch block 
        e.printStackTrace(); 
       } 

      } 

     XYMultipleSeriesDataset dataset = new XYMultipleSeriesDataset(); 

     dataset.addSeries(series); 

XYSeriesRenderer render = new XYSeriesRenderer(); 
    render.setColor(Color.GREEN); 
render.setPointStyle(PointStyle.SQUARE); 
render.setFillPoints(true); 

     XYMultipleSeriesRenderer renderer = new XYMultipleSeriesRenderer(); 
    renderer.addSeriesRenderer(render); 

     renderer.setChartTitle("Line Chart"); 
    renderer.setAxesColor(Color.BLUE); 
    renderer.setGridColor(Color.WHITE); 

    renderer.setShowGrid(true); 
    renderer.setShowAxes(true); 
    renderer.setShowGridX(true); 
    renderer.setShowGridY(true); 
    renderer.setShowLabels(true); 
    renderer.setPanEnabled(true, true); 
    renderer.setFitLegend(true); 
    renderer.setXTitle("Date"); 
    renderer.setAxisTitleTextSize(15); 
    renderer.setXLabelsAlign(Align.CENTER); 
    renderer.setYTitle("Values"); 

    chart = ChartFactory.getLineChartView(this, dataset, renderer); 

我在x軸上遇到奇怪的值。

任何幫助,將不勝感激。 enter image description here

+0

我只有y值的陰謀.. – moDev

回答

3

這是我在我的代碼所做的基本變化和它的工作對我..

TimeSeries series2 = new TimeSeries("Protein"); 

      for (int i = 0; i < x_axis.size(); i++) { 

       int y = Integer.parseInt(y1_axis.get(i)); 

       // Adding y as protein value 
       series2.add(i + 1, y); 

      } 


    for (int i = 0; i < x_axis.size(); i++) { 
     renderer.addXTextLabel(i + 1, x_axis.get(i)); 
    } 

    renderer.setXLabels(0); 

enter image description here

+0

嗨Mitesh,你可以給整個活動,我也做這樣的事情(新的android)。 –

2

XYMultipleSeriesRenderer renderer = new XYMultipleSeriesRenderer();

之後添加以下代碼... 設置如下圖按您的要求......

  String MainTitle = "Graph"; 
      String XTitle = "Date"; 
      String YTitle = "Values"; 
      float minValueX = 0.0f; 
      float maxValueX = 30.00f; 
      float minValueY = 0f; 
      float maxValueY = 50f; 



setChartSettings(renderer, MainTitle, XTitle, YTitle, minValueX, 
         maxValueX, minValueY, maxValueY, Color.BLACK, Color.BLACK); 


protected void setChartSettings(XYMultipleSeriesRenderer renderer, 
       String title, String xTitle, String yTitle, double xMin, 
       double xMax, double yMin, double yMax, int axesColor, 
       int labelsColor) { 
      renderer.setChartTitle(title); 
      renderer.setXTitle(xTitle); 
      renderer.setYTitle(yTitle); 
      renderer.setXAxisMin(xMin); 
      renderer.setXAxisMax(xMax); 
      renderer.setYAxisMin(yMin); 
      renderer.setYAxisMax(yMax); 
      renderer.setAxesColor(axesColor); 
      renderer.setLabelsColor(labelsColor); 
     } 

在Chartengine顯示日期或月份只有數字身影所以你的設定數值,並設置標籤日期..作爲X軸顯示日期不知道,但我THIK不是由圖表引擎提供

0

等脂肪,蛋白質是小尺寸如何改變大小和位置?

我在代碼下添加我的代碼,然後顯示圖表值,但文本大小很小如何更改?

renderer.setDisplayChartValues(true); 
+0

renderer.setChartValuesTextSize(150); – metin

相關問題