PhilJay/MPAndroidChart在线形图中绘制服务器日期

PhilJay/MPAndroidChart在线形图中绘制服务器日期,android,linechart,Android,Linechart,我正在尝试将服务器中的数据绘制到折线图中 我尝试将服务器日期转换为long 我无法显示正确的绘图 来自服务器的数据 { "status_code": 200, "status": "Success", "response": { "wws_level": 1, "current": 2.1, "target": 66, "logs": [ { "id": "22", "stats_id": "1",

我正在尝试将服务器中的数据绘制到折线图中

我尝试将服务器日期转换为
long

我无法显示正确的绘图

来自服务器的数据

{
  "status_code": 200,
  "status": "Success",
  "response": {
    "wws_level": 1,
    "current": 2.1,
    "target": 66,
    "logs": [
      {
        "id": "22",
        "stats_id": "1",
        "user_id": "53",
        "log_of_on": "2017-07-27",
        "log_val": "6.00",
        "height": "5.8",
        "log_date": "27 July, 2017"
      }
    ]
  },
  "message": ""
}
X轴记录日期:“2017年7月27日”

Y轴
“对数”:“6.00”

我的代码

            ArrayList<Entry> e1 = new ArrayList<Entry>();
            ArrayList xAxisLabel;
            LineDataSet d1;


            for (int i = 1; i < graphData.size(); i++) {

                float x_points = Float.parseFloat(graphData.get(i).getLogVal());
                String y_points = graphData.get(i).getLogDate();
                e1.add(new Entry(x_points, getTimeStamp(y_points)));

            }


            d1 = new LineDataSet(e1, null);
            d1.setLineWidth(1.0f);
            d1.setCircleRadius(2f);
            d1.setDrawValues(true);
            d1.setColor(ContextCompat.getColor(context, R.color.colorPrimaryDark));
            d1.setCircleColor(ContextCompat.getColor(context, R.color.colorPrimaryDark));
            d1.setCircleColorHole(ContextCompat.getColor(context, R.color.colorPrimaryDark));
            d1.setDrawValues(false);
            LineData lineData = new LineData(d1);
ArrayList e1=新的ArrayList();
ArrayList标签;
数据集d1;
对于(int i=1;i
预期图

是否可能是您在混合X值和Y值

String x_points =  graphData.get(i).getLogDate();
float y_points = Float.parseFloat(graphData.get(i).getLogVal());
e1.add(new Entry(getTimeStamp(x_points), y_points));
我找到了一份工作

线形图

ArrayList<Entry> e1 = new ArrayList<Entry>();
            ArrayList xAxisLabel;
            LineDataSet d1;

            xAxisLabel = new ArrayList<>(graphData.size());
            for (int i = 1; i < graphData.size(); i++) {

                float x_points = i;
                float y_points = Float.parseFloat(graphData.get(i).getLogVal());
                e1.add(new Entry(x_points, y_points));
                xAxisLabel.add(getSubsString(graphData.get(i).getLogDate()));
            }


            d1 = new LineDataSet(e1, null);
            d1.setLineWidth(1.0f);
            d1.setCircleRadius(2f);
            d1.setDrawValues(true);
            d1.setColor(ContextCompat.getColor(context, R.color.colorPrimaryDark));
            d1.setCircleColor(ContextCompat.getColor(context, R.color.colorPrimaryDark));
            d1.setCircleColorHole(ContextCompat.getColor(context, R.color.colorPrimaryDark));
            d1.setDrawValues(false);
            LineData lineData = new LineData(d1);


            graphViewHolder.lineChart.setData(lineData);
            graphViewHolder.lineChart.getXAxis().setGranularityEnabled(true);
            graphViewHolder.lineChart.getXAxis().setGranularity(1.0f);
            graphViewHolder.lineChart.getXAxis().setPosition(XAxis.XAxisPosition.BOTTOM);
            graphViewHolder.lineChart.getAxisRight().setDrawLabels(false);
            graphViewHolder.lineChart.setHighlightPerTapEnabled(false);
            graphViewHolder.lineChart.setGridBackgroundColor(ContextCompat.getColor(context, R.color.greyBg));
            graphViewHolder.lineChart.getDescription().setEnabled(false);
            graphViewHolder.lineChart.getLegend().setEnabled(false);
            graphViewHolder.lineChart.getPaint(LineChart.PAINT_DESCRIPTION).setColor(ContextCompat.getColor(context, android.R.color.transparent));
            graphViewHolder.lineChart.setDrawGridBackground(false);
            graphViewHolder.lineChart.getXAxis().setAvoidFirstLastClipping(true);
            graphViewHolder.lineChart.getXAxis().setValueFormatter(new IndexAxisValueFormatter(xAxisLabel));


            // do not forget to refresh the chart
            graphViewHolder.lineChart.invalidate();
            graphViewHolder.lineChart.animateX(750);

现在得到一条垂直直线。不起作用:(此方法实际上是3.1.0中的
setCircleColorHoleColor
)。
private String getSubsString(String serverDate) {

        String subString[] = serverDate.split(","); // 28 July, 2017
        return subString[0]; // 28 July
    }