MPAndroidChart. Как мне построить график LineChart y=0 по оси X, не исчезая?JAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 MPAndroidChart. Как мне построить график LineChart y=0 по оси X, не исчезая?

Сообщение Anonymous »

Я использую MPAndroidChart v.3.1.0 и использую LineChart. У меня есть непрерывный график данных, который начинается с (0,0). Некоторые точки Y будут положительными, но некоторые точки будут равны 0. Мой текущий график выглядит следующим образом:
Изображение

Как вы можете видите, когда y=0, линия исчезает, а затем появляется снова, когда y!=0. Я хочу, чтобы линия продолжалась вдоль оси X до следующего положительного значения Y. Ниже приведен снимок экрана желаемого результата другого графика в Интернете, использующего другую библиотеку:
Изображение

Любая помощь очень ценится!
Я пробовал много разных настроек, предложенных в stackOverflow, но я Кажется, я не могу найти ничего, что действительно работало бы.
val dataPoints = listOf(
Entry(1f, 2f),
Entry(2f, 0f),
Entry(2.5f, 0f),
Entry(2.7f, 0f),
Entry(3f, 4f),
Entry(4f, 5f)
)
val chartdata = LineData(
LineDataSet(
dataPoints,
"Label",
)
)
LineChart(context).apply {
setBackgroundColor(backgroundColor)
setPinchZoom(false)
setTouchEnabled(false)
setScaleEnabled(false)
setDrawBorders(false)
setMaxVisibleValueCount(0)
isHighlightPerDragEnabled = false
isHighlightPerTapEnabled = false
description.isEnabled = false
isDragEnabled = false
xAxis.apply {
setDrawGridLines(false)
setLabelCount(3, true)
setAvoidFirstLastClipping(true)
position = XAxis.XAxisPosition.BOTTOM
textSize = 12.sp.value
textColor = axisLeftTextColor
isGranularityEnabled = true
granularity = 5f.div(2)
yOffset = 20f
axisMinimum = 0f
axisMaximum = 5f
axisLineColor = Color.TRANSPARENT
valueFormatter =
object : ValueFormatter() {
override fun getFormattedValue(value: Float) =
when (value) {
0f -> xAxisRange.axisLabel?.start
maxXSize.div(2) -> xAxisRange.axisLabel?.middle
else -> xAxisRange.axisLabel?.end
} ?: ""
}
}
axisLeft.apply {
setPosition(YAxis.YAxisLabelPosition.OUTSIDE_CHART)
setDrawGridLines(true)
setLabelCount(3, true)
textSize = 12.sp.value
textColor = axisLeftTextColor
isGranularityEnabled = true
granularity = 6f.div(2)
axisMinimum = 0f
axisMaximum = 6f
xOffset = 16f
axisLineColor = Color.TRANSPARENT
gridColor = Color.TRANSPARENT
valueFormatter =
object : ValueFormatter() {
override fun getFormattedValue(value: Float) =
getFormattedYAxisValue(value.toLong())
}
}
axisRight.apply {
axisLineColor = Color.TRANSPARENT
textColor = Color.TRANSPARENT
isGranularityEnabled = true
granularity = maxYSize.div(4)
axisMinimum = 0f
axisMaximum = maxYSize
gridColor = gridLineColor
x = -5f
setLabelCount(5, true)
}
data =
chartdata.apply {
dataSets.mapNotNull {
(it as? LineDataSet)?.apply {
setDrawCircles(false)
setDrawCircleHole(false)
setDrawValues(false)
cubicIntensity = 0.15f
mode = LineDataSet.Mode.CUBIC_BEZIER
lineWidth = 3.dp.value
color = pointLineColor
}
}
}
}


Подробнее здесь: https://stackoverflow.com/questions/791 ... -disappear
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • MPAndroidChart. Как мне построить график LineChart y=0 по оси X, не исчезая?
    Anonymous » » в форуме JAVA
    0 Ответы
    11 Просмотры
    Последнее сообщение Anonymous
  • MPAndroidChart. Как мне построить график LineChart y=0 по оси X, не исчезая?
    Anonymous » » в форуме Android
    0 Ответы
    21 Просмотры
    Последнее сообщение Anonymous
  • MPAndroidChart. Как мне построить график LineChart y=0 по оси X, не исчезая?
    Anonymous » » в форуме Android
    0 Ответы
    13 Просмотры
    Последнее сообщение Anonymous
  • MPAndroidChart BarChart: события касания не работают из-за несортированных данных по оси X
    Anonymous » » в форуме Android
    0 Ответы
    17 Просмотры
    Последнее сообщение Anonymous
  • Как разрезать 2D-линейный график, чтобы создать 3D-график поверхности (или контурный график)? Питон
    Anonymous » » в форуме Python
    0 Ответы
    73 Просмотры
    Последнее сообщение Anonymous

Вернуться в «JAVA»