Giter VIP home page Giter VIP logo

Comments (2)

 avatar commented on June 8, 2024 1

Hello! In Vico 1.3.0, a solution along these lines could be used:

class Entry(
    val localDate: LocalDate,
    override val x: Float,
    override val y: Float,
) : ChartEntry {

    override fun withY(y: Float) = Entry(
        localDate = this.localDate,
        x = this.x,
        y = y,
    )
}

val entries = listOf(
    "2022-07-14" to 1.3f,
    "2022-07-15" to 2.5f,
    "2022-07-17" to 2.5f,
    "2022-08-01" to 3f,
).mapIndexed { index, (dateString, y) ->

    Entry(
        localDate = LocalDate.parse(dateString),
        x = index.toFloat(),
        y = y,
    )
}

val bottomAxis = bottomAxis(
    valueFormatter = { value, chartValues ->
        (chartValues.chartEntryModel.entries[0].getOrNull(value.toInt()) as Entry?)
            ?.localDate
            ?.dayOfMonth
            ?.toString()
            .orEmpty()
    },
)

Chart(
    chart = columnChart(),
    chartModelProducer = remember { ChartEntryModelProducer(entries) },
    startAxis = startAxis(),
    bottomAxis = bottomAxis,
)

image

from vico.

 avatar commented on June 8, 2024

Hello! The current version of Vico contains some limitations that would make it relatively time-consuming to implement such a chart. The next update will remove said limitations. Once itʼs available, Iʼll post a comment here and show you how the chart in question could be created. Thanks for the suggestions!

from vico.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.