ChartProgressBar alternatives and similar libraries
Based on the "Charts" category.
Alternatively, view ChartProgressBar alternatives based on common mentions on social networks and blogs.
-
Scrollable-GraphView
An adaptive scrollable graph view for iOS to visualise simple discrete datasets. Written in Swift. -
FSInteractiveMap
A charting library to visualize and interact with a vector map on iOS. It's like Geochart but for iOS! -
ANDLineChartView
ANDLineChartView is easy to use view-based class for displaying animated line chart. -
TWRCharts
An iOS wrapper for ChartJS. Easily build animated charts by leveraging the power of native Obj-C code. -
Dr-Charts
Dr-Charts is a highly customisable, easy to use and interactive chart / graph framework in Objective-C.
InfluxDB - Purpose built for real-time analytics at any scale.
* Code Quality Rankings and insights are calculated and provided by Lumnify.
They vary from L1 to L5 with "L5" being the highest.
Do you think we are missing an alternative of ChartProgressBar or a related project?
README
ChartProgressBar-iOS
Draw a chart with progress bar style - the android version here
Installation
iOS version (9.0,*)
Swift 3.2
Using cocoapods : pod 'ChartProgressBar'
Or
Clone this repo and copy all the files
Usage
Add a UIView and set class name 'ChartProgressBar' , set the width and the height of this UIView
- Add your Data to the chart :
import UIKit
import ChartProgressBar
class ViewController: UIViewController, ChartProgressBarDelegate {
@IBOutlet weak var chart: ChartProgressBar!
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
var data: [BarData] = []
data.append(BarData.init(barTitle: "Jan", barValue: 1.4, pinText: "1.4 €"))
data.append(BarData.init(barTitle: "Feb", barValue: 10, pinText: "10 €"))
data.append(BarData.init(barTitle: "Mar", barValue: 3.1, pinText: "3.1 €"))
data.append(BarData.init(barTitle: "Apr", barValue: 4.8, pinText: "4.8 €"))
data.append(BarData.init(barTitle: "May", barValue: 6.6, pinText: "6.6 €"))
data.append(BarData.init(barTitle: "Jun", barValue: 7.4, pinText: "7.4 €"))
data.append(BarData.init(barTitle: "Jul", barValue: 5.5, pinText: "5.5 €"))
chart.data = data
chart.barsCanBeClick = true
chart.maxValue = 10.0
chart.emptyColor = UIColor.clear
chart.barWidth = 7
chart.progressColor = UIColor.init(hexString: "99ffffff")
chart.progressClickColor = UIColor.init(hexString: "F2912C")
chart.pinBackgroundColor = UIColor.init(hexString: "E2335E")
chart.pinTxtColor = UIColor.init(hexString: "ffffff")
chart.barTitleColor = UIColor.init(hexString: "B6BDD5")
chart.barTitleSelectedColor = UIColor.init(hexString: "FFFFFF")
chart.pinMarginBottom = 15
chart.pinWidth = 70
chart.pinHeight = 29
chart.pinTxtSize = 17
chart.delegate = self
chart.build()
chart.disableBar(at: 3)
let when = DispatchTime.now() + 6 // change 2 to desired number of seconds
DispatchQueue.main.asyncAfter(deadline: when) {
self.chart.enableBar(at: 3)
}
}
}
To Handle ChartProgressBarDelegate
extension MainViewController: ChartProgressBarDelegate {
func ChartProgressBar(_ chartProgressBar: ChartProgressBar, didSelectRowAt rowIndex: Int) {
print(rowIndex)
}
}
Useful methods
chart.removeValues()
: Remove values of all progress bars in the chart.chart.resetValues()
: Set values to the chart ( it may used afterremoveBarValues()
) .chart.removeClickedBar()
: Unselect the clicked bar.isBarsEmpty()
: Check if bars values are empty.chart.disableBar(at: Int)
: Disable a bar progmatically.chart.enableBar(at: Int)
: Enable a bar progmatically.clickBar(index: Int)
: Click a bar progmatically.
Credits
this library use AlNistor sample to draw a single bar.
Thanks for Simplexity that gave me time for doing this library.
*Note that all licence references and agreements mentioned in the ChartProgressBar README section above
are relevant to that project's source code only.