Contents

augarte/SimpleLineChart

Simple line charts for iOS πŸ“ˆ

Features

  • UIKit chart view with minimal setup
  • Solid or gradient background
  • Line styling (stroke, points, shadow)
  • Optional period buttons for time-series data
  • Multiple datasets per chart

Requirements

  • iOS 13.0+
  • Swift 5.1+

Usage

Quick start

let values: [SLCData] = [
    SLCData(x: 0, y: 5),
    SLCData(x: 1, y: 7),
    SLCData(x: 2, y: 9)
]

let lineChart = SimpleLineChart()

let dataSet = SLCDataSet(graphPoints: values)
lineChart.loadPoints(dataSet: dataSet)

Styling the chart background

let chartStyle = SLCChartStyle(
    backgroundGradient: false,
    solidBackgroundColor: .white
)
lineChart.setChartStyle(chartStyle: chartStyle)

Styling the chart line

let lineStyle = SLCLineStyle(
    lineColor: .blue,
    lineStroke: 3.0,
    circleDiameter: 5.0,
    lineShadow: true,
    lineShadowgradientStart: .blue,
    lineShadowgradientEnd: .white
)
dataSet.setLineStyle(lineStyle)

Time-series periods (optional)

let chartStyle = SLCChartStyle(addPeriodButtons: true)
lineChart.setChartStyle(chartStyle: chartStyle)

let now = Int(Date().timeIntervalSince1970)
let values = [
    SLCData(x: now - 86400, y: 5),
    SLCData(x: now - 3600, y: 7),
    SLCData(x: now, y: 9)
]

When addPeriodButtons is enabled, SLCData.x must be a UNIX timestamp in seconds for filtering to work correctly.

Multiple datasets

let first = SLCDataSet(graphPoints: values1)
let second = SLCDataSet(graphPoints: values2)
lineChart.loadPoints(dataSets: [first, second])

Installation

Swift Package Manager
dependencies: [
    .package(url: "https://github.com/augarte/SimpleLineChart.git", .exact("1.0.0"))
]
CocoaPods
pod 'SimpleLineChart', '1.0.0'

Example

Example app can be found here: SLCExampleApp

License

SimpleLineChart is available under the MIT license. See the LICENSE for more info.

Package Metadata

Repository: augarte/SimpleLineChart

Stars: 1

Forks: 0

Open issues: 0

Default branch: main

Primary language: swift

License: MIT

Topics: chart, ios, linechart, swift, swiftpackagemanager

README: README.md