值图我想绘制了我的Time
在x-axis
应用和y轴上的值的Time vs Value
图为此我使用ChartView
https://github.com/nadavfima/ChartView。但我在将Time
插入x-axis
时遇到问题,因为它只接受整数。我如何摆脱这个问题?我有“dd-MMM-YYYY h:mm:ss”格式的时间值。尝试使用achartengine
但不满意。任何帮助将深表谢意。时间与android系统
在此先感谢。
值图我想绘制了我的Time
在x-axis
应用和y轴上的值的Time vs Value
图为此我使用ChartView
https://github.com/nadavfima/ChartView。但我在将Time
插入x-axis
时遇到问题,因为它只接受整数。我如何摆脱这个问题?我有“dd-MMM-YYYY h:mm:ss”格式的时间值。尝试使用achartengine
但不满意。任何帮助将深表谢意。时间与android系统
在此先感谢。
您需要将时间转换为双精度以便ChartView可以使用它们,然后创建自己的LabelAdapter以在显示标签时将这些双精度值转换回时间格式。
例如,你可以使用这样的代码来获得以毫秒为单位的时间,假设你已经解析您的输入格式为年,月,日,等
Calendar calendar = new GregorianCalendar(year, month, day, hour, min, sec);
double floatTime = calendar.getTimeInMillis();
举一个例子如何创建一个LabelAdpater,看看包含ChartView的example code。
在这个例子中,他们只是写出标签为float这样的:
labelTextView.setText(String.format("%.1f", getItem(position)));
但是你可以很容易地做这样的事情,而不是:
double floatTime = getItem(position);
Calendar calendar = new GregorianCalendar();
calendar.setTimeInMillis((long)floatTime);
SimpleDateFormat sdf = new SimpleDateFormat("dd-MM-yyyy HH:mm:ss");
sdf.setTimeZone(TimeZone.getDefault());
String stringTime = sdf.format(calendar.getTime());
labelTextView.setText(stringTime);
是的,我试过将时间转换为Double,并绘制了图形,但无法将x轴上的标签更改回时间。 –
您是否创建了一个LabelAdapter类?你叫“chartView.setBottomLabelAdapter”吗?它是如何失败的?编译它有问题吗? 'getView'方法不会被调用吗? –
给它的整数? –