android - 我想以 HH: mm 格式显示 x 轴标签
问题描述
我正在使用带有 mpandroidchart 的图形。
最终目标是以 HH:mm 格式显示 x 轴标签。
我调用的数据数据结构在x轴上是java.time.Instant类型,y是作为double类型导入的。
1.尝试添加到entry(x,y)时出现转换问题。我不知道如何解决它。我的代码
getDataFromInflux("-24h", "1h", "pressure", serialNo, { x, y, loc ->
Dlog.d("$x") // ex:2021-04-12T10:00:00Z
Dlog.d("$y") // ex:139.12210569105687
Dlog.d("$loc") //loc: String
map["$loc"]!!.add(Entry(x,y)) // problem
}
- 如果有多个条目,请告诉我如何根据 x 轴上的数据将其更改为 valuefomatter HH:mm 格式。
我的代码
val xAxis = binding.chartReportTemperature.xAxis // x축
xAxis.apply {
valueFormatter = ValueFormatter(xValsDateLabel) <- problem
position = XAxis.XAxisPosition.BOTTOM
textColor = Color.WHITE
labelCount =
}
class ValueFormatter(private val xValsDateLabel: ArrayList<String>) : ValueFormatter() {
override fun getFormattedValue(value: Float): String {
return value.toString()
}
override fun getAxisLabel(value: Float, axis: AxisBase): String {
if (value.toInt() >= 0 && value.toInt() <= xValsDateLabel.size - 1) {
return xValsDateLabel[value.toInt()]
} else {
return ("").toString()
}
}
}
我已经两天没解决了。请。
解决方案
推荐阅读
- reactjs - Redux-saga 取数据第一次返回 undefined 然后返回数据
- scikit-learn - “分割数 n_splits=3 不能大于样本数:n_samples=1”
- symfony - 使用 Symfony 的 AbstractAuthenticator 进行公共访问
- mongodb - 使用 NestJS 和 GraphQL 访问 MongoDB GridFS 中的文件
- php - 当表单从 PHP 中的其他网站发布时,会话和 cookie 会自动销毁
- call - 如何使用 .net 调用 Netsuite Reslet API
- pytorch - 我可以使用高版本的torch和低版本的cuda吗?
- php - Laravel 8 Jetstream Inertia 所有 Inertia 请求都必须收到有效的 Inertia 响应
- java - 即使在 Stack Overflow 和 Google 搜索上有许多不同的解决方案后,Spring boot thymeleaf 也无法返回 HTML 页面
- python - 如何在 Python/Flask 中的 Instamojo 中收集交易的付款 ID