ChartView Versions Save

ChartView made in SwiftUI

2.0.0-beta.8

1 year ago

2.0.0-beta.7

1 year ago

2.0.0-beta.6

1 year ago

2.0.0-beta.5

1 year ago

.setBackground(colorGradient: ColorGradient(.red, .yellow))

2.0.0-beta.4

1 year ago

Added new axis labels

new functions are:

func setAxisYLabels(_ labels: [String], position: AxisLabelsYPosition = .leading)

func setAxisXLabels(_ labels: [String])

func setAxisYLabels(_ labels: [(Double, String)], range: ClosedRange<Int>, position: AxisLabelsYPosition = .leading)

func setAxisXLabels(_ labels: [(Double, String)], range: ClosedRange<Int>)

2.0.0-beta.3

1 year ago

LineChart now supports these new functions:

func setLineWidth(width: CGFloat) - to set line width func showBackground(_ show: Bool) - to show background below a line func showChartMarks(_ show: Bool) - to show marks at the points func setLineStyle(to style: LineStyle) - to set it curved or straight

New elements:

ChartGrid

displays a user defined grid behind chart

func setNumberOfHorizontalLines(_ numberOfLines: Int) - to display horizontal lines func setNumberOfVerticalLines(_ numberOfLines: Int) - to display vertical lines func setStoreStyle(_ strokeStyle: StrokeStyle) - to set stroke pattern linewidth etc... func setColor(_ color: Color) - set color func showBaseLine(_ show: Bool, with style: StrokeStyle? = nil) - show a line at the base with given style

AxisLabels

displays user defined labels along X or Y or both axises

func setAxisYLabels(_ labels: [String]) - takes and array which will be displayed along Y axis func setAxisXLabels(_ labels: [String]) - takes and array which will be displayed along X axis

Demo

Displaying a simple line chart with marks and X and Y ranges.

LineChart()
    .setLineWidth(width: 2)
    .showChartMarks(true)
    .showBackground(false)
    .data([2, 4, 5, 1, 3])
    .rangeY(0...10)
    .rangeX(0...10)
    .chartStyle(ChartStyle(backgroundColor: .white, foregroundColor: ColorGradient(.blue, .purple)))

Adding a grid behind the LineChart

ChartGrid {
    LineChart()
        .setLineWidth(width: 2)
        .showChartMarks(true)
        .showBackground(false)
        .data([2, 4, 5, 1, 3])
        .rangeY(0...10)
        .rangeX(0...10)
        .chartStyle(ChartStyle(backgroundColor: .white, foregroundColor: ColorGradient(.blue, .purple)))
}
.setNumberOfHorizontalLines(11)
.setNumberOfVerticalLines(11)
.showBaseLine(true)

Adding labels along X and Y axises

AxisLabels {
    ChartGrid {
        LineChart()
            .setLineWidth(width: 2)
            .showChartMarks(true)
            .showBackground(false)
            .data([2, 4, 5, 1, 3])
            .rangeY(0...10)
            .rangeX(0...10)
            .chartStyle(ChartStyle(backgroundColor: .white, foregroundColor: ColorGradient(.blue, .purple)))
    }
    .setNumberOfHorizontalLines(11)
    .setNumberOfVerticalLines(11)
    .showBaseLine(true)
}
.setAxisYLabels(["0","5","10"])
.setAxisXLabels(["27 Oct", "2 Nov", "9 Nov", "15 Nov", "22 Nov"])

2.0.0-beta.2

2 years ago
  • improved handling of negative numbers
  • precise alignment of line chart view to the grid lines
  • interaction enabled on: bar chart, line chart, pie chart, ring chart
  • new bar chart shape

1.5.5

3 years ago

1.5.4

3 years ago

2.0.0-beta.1

3 years ago

This is the first beta release of the upcoming v2

Please download it with caution, as it has breaking changes!

This release is not yet fully feature complete.

Find more information about V2 and the documentation in #89