我正在使用MPAndroidChart来显示带有日期值的折线图。
相对于标绘值,我得到的x轴值越来越少。
我正在使用Kotlin语言。
我的代码段如下。
private fun loadGraphData() {
val list1 = ArrayList<ComponentModel>()
list1.add(ComponentModel("2010-12-11T09:47:00+00:00", 99.0f))
list1.add(ComponentModel("2010-12-12T09:47:00+00:00", 100.0f))
list1.add(ComponentModel("2010-12-13T09:47:00+00:00", 101.0f))
list1.add(ComponentModel("2010-12-14T09:47:00+00:00", 102.0f))
list1.add(ComponentModel("2010-12-15T09:47:00+00:00", 99.0f))
list1.add(ComponentModel("2010-12-16T09:47:00+00:00", 100.0f))
list1.add(ComponentModel("2010-12-17T09:47:00+00:00", 101.0f))
list1.add(ComponentModel("2010-12-18T09:47:00+00:00", 102.0f))
list1.add(ComponentModel("2010-12-19T09:47:00+00:00", 99.0f))
list1.add(ComponentModel("2010-12-20T09:47:00+00:00", 100.0f))
val entries = populateDataInGraph(list1)
val dataSet = LineDataSet(entries, "Test Result")
dataSet.apply {
color = Color.RED
setDrawValues(false)
setDrawCircleHole(false)
setCircleColor(Color.RED)
}
img_test_result_graph.apply {
xAxis.apply {
xAxis.position = XAxis.XAxisPosition.BOTTOM
setDrawGridLines(false)
textSize = 4f
valueFormatter = DateValueFormatter()
isGranularityEnabled = true
granularity = 1f
labelCount = list1.size
}
axisLeft.apply {
setDrawGridLines(false)
valueFormatter = YAxisDataFormatter()
granularity = 1f
addLimitLine(LimitLine(100.0f, "Normal").also { it.lineColor = Color.GREEN })
}
axisRight.isEnabled = false
data = LineData(dataSet)
setScaleEnabled(true)
description.text = ""
invalidate()
}
}
我也尝试从github中发布的问题进行了细化。 即使我得到如下图
帮助显示x轴值等于绘制的值。