2011-07-04 13 views
9

değerlerine göre kaydırılırken, Timechart'ımın Xlabels'inin X- değerleriyle eşitlenmediğini fark ettim. Noktalar, etiketlerin üzerinde olmalıdır. Sol tarafta Tamam, ancak sağa kaydırır. Nasıl çözüleceğini bilmiyorum bu i almak Ne: http://tinypic.com/r/2uqj905/7 gibi olması gerektiği Nasıl: Bir çizgi grafik çalıştı veya bir çift için tarih dönüştürülmüş ama bu etkisi vardı http://www.achartengine.org/dimages/average_temperature.png . Herhangi bir yardım güzel olurdu. Bu benim kod bazı olduğunuachartengine x-ekseni etiketleri,

Saygılarımızla, Christian

:

XYMultipleSeriesRenderer renderer = buildRenderer(colors, styles); 
    renderer.setPointSize(5.5f); 
    renderer.setZoomEnabled(false, false); 
    renderer.setMarginsColor(Color.parseColor("#00FF0000")); 
    renderer.setAxisTitleTextSize(16); 
    renderer.setYLabelsAlign(Align.RIGHT); 
    renderer.setLabelsTextSize(15); 
    renderer.setLegendTextSize(15); 
    renderer.setMargins(new int[] { 10, 65, 18, 10 }); 

    int length = renderer.getSeriesRendererCount(); 
    for (int i = 0; i < length; i++) { 
     XYSeriesRenderer seriesRenderer = (XYSeriesRenderer) renderer 
       .getSeriesRendererAt(i); 
     seriesRenderer.setFillPoints(true); 
     seriesRenderer.setLineWidth(4.0f); // dikte van lijn 
    } 

    MinMax minMax = determineMinMax(targetSteps, samples); 

    setChartSettings(renderer, context.getString(R.string.graph_title), 
      dateLabelOnScreenType(type), 
      context.getString(R.string.graph_y_axis), minMax.minX, 
      minMax.maxX, minY, maxY, Color.WHITE, 
      Color.BLACK); 
    renderer.setXLabels(7); 

    renderer.setYLabels(0); 
    renderer.setDisplayChartValues(false); 
    renderer.setShowGrid(true); 
    renderer.setPanEnabled(false, false); 


    // set the data 
    String[] titles = new String[] { 
      context.getString(R.string.graph_legend_target), 
      context.getString(R.string.graph_legend_actual) }; 
    XYMultipleSeriesDataset dataSet = buildDateDataset(titles, 
xSeriesList, 
      ySeriesList); 

    TimeChart chart = new TimeChart(dataSet, renderer); 
    chart.setDateFormat(dateFormatOnSampleType(type)); 
    GraphicalView gview = new GraphicalView(context, chart); 
+0

Sorun olabilecek kodun büyük bir kısmını kaçırdığımız gibi görünüyor. Önce determinMax (targetSteps, samples); Bunu achartengine'nin parçası olarak bulamıyorum, sanırım seninindir. İstediğiniz gibi çalışan% 100 emin misiniz? Ayrıca, targetSteps'in değere sahip olduğunu göremiyorum. Resminizden birkaç garip şey var, gösterilen 6 dataPoints var ama sadece 5 tane etiket var. Ayrıca dataPuanlar için başlangıç ​​noktası, etiketlerin başlangıç ​​noktasıyla ilgilidir. Etiketlerin ve veri noktalarının aynı olmaması için yayında bir sorun olduğunu tahmin ediyorum. – larlin

cevap

3
renderer.setYLabelsAlign(Align.RIGHT); 

Değiştir:

renderer.setYLabelsAlign(Align.CENTER); 
0

bu çözüm süre önce eklendi. Sadece arayın:

renderer.setXRoundedLabels(false)