Android的图表与x轴的日期
问题描述:
在这里,我试图表现出与x轴的日期,其中值是从Web服务器检索到的图:
Here I'm trying to show a chart with dates on x-axis where the values are retrieved from web-server:
// Our first data
Date[] x = dates_array; // x values!
double[] y = readings_array; // y values!
XYMultipleSeriesRenderer mRenderer = new XYMultipleSeriesRenderer(); // Holds a collection of XYSeriesRenderer and customizes the graph
XYSeriesRenderer renderer = new XYSeriesRenderer(); // This will be used to customize line 1
XYSeriesRenderer renderer2 = new XYSeriesRenderer(); // This will be used to customize line 2
mRenderer.addSeriesRenderer(renderer);
mRenderer.addSeriesRenderer(renderer2);
TimeSeries series = new TimeSeries("peak flow");
for( int i = 0; i < x.length; i++)
{
series.add(x[i], y[i]);
}
// Our second data
int[] x2 = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 }; // x values!
int[] y2 = { 145, 123, 111, 100, 89, 77, 57, 45, 34, 30}; // y values!
TimeSeries series2 = new TimeSeries("Line2");
for( int i = 0; i < x2.length; i++)
{
series2.add(x2[i], y2[i]);
}
XYMultipleSeriesDataset dataset = new XYMultipleSeriesDataset();
dataset.addSeries(series);
dataset.addSeries(series2);
// Customization time for line 1!
renderer.setColor(Color.WHITE);
renderer.setPointStyle(PointStyle.SQUARE);
renderer.setFillPoints(true);
// Customization time for line 2!
renderer2.setColor(Color.YELLOW);
renderer2.setPointStyle(PointStyle.DIAMOND);
renderer2.setFillPoints(true);
Intent intent = ChartFactory.getTimeChartIntent(getApplicationContext(), dataset,
mRenderer, "DD MMM yyyy");
startActivity(intent);
}
});
它正常工作与y轴,但是,从x轴显示的值是随机值不是我的价值观!
任何帮助吗?
It works fine with the y-axis but on the x-axis the values shown are random values not my values! Any help please?
答
在的TimeSeries
你应该使用添加(日期X,双Y )
方法,而不是添加(双X,双Y)
之一。
In the TimeSeries
you should use the add(Date x, double y)
method, not the add(double x, double y)
one.
如果你想在X轴标签是数据的准确日期,那么这样做:
If you want the X axis labels to be exactly the dates of your data then do this:
renderer.setXRoundedLabels(false);