CoreCharts 1.0.7

CoreCharts 1.0.7

Cagri COLAK 维护。



  • Çağrı ÇOLAK 和 Kemal TÜRK

CoreCharts

使用 CoreCharts 在 iOS 上优雅地使用图表😎

CocoaPods Compatible CocoaPods Compatible

alt text alt text

入门

您需要一个已安装 Cocoapods 的 Mac,如果不熟悉,请访问这里 CocoaPods

需求

  • XCode 8.3+
  • iOS 9.3+

安装

添加 pod 文件

pod 'CoreCharts'

然后敲击你的命令行

pod install 

现在您可以开始使用 CoreCharts 了

使用中

将库导入到需要的项目中

import CoreCharts

然后在Storyboard或Xib文件中打开,添加新的UIView,并将主视图拖入。之后,将子类改为Vertical以使用VCoreBarChart,或改为Horizontal以使用HCoreBarChart

alt text

引用一下!

@IBOutlet weak var barChart: VCoreBarChart!

最重要的配置已经准备好了,现在您可以使用CoreChart的一些特性属性了。

首先,您的类需要遵守数据源协议

class DemoViewController: UIViewController,CoreChartViewDataSource {

    @IBOutlet weak var barChart: VCoreBarChart!
    
    override func viewDidLoad() {
        super.viewDidLoad()
        
        barChart.dataSource = self
    }

现在,您有两种方法需要实现。

func loadCoreChartData() -> [CoreChartEntry]

optional func didTouch(entryData: CoreChartEntry)

loadCoreChartData方法用于填充条形图,您需要将您的数据转换为CoreChartEntry类型

func loadCoreChartData() -> [CoreChartEntry] {

        var allCityData = [CoreChartEntry]()
    
        let cityNames = ["Istanbul","Antalya","Ankara","Trabzon","İzmir"]
    
        let plateNumber = [34,07,06,61,35]
        
        for index in 0..<cityNames.count {
            
            let newEntry = CoreChartEntry(id: "\(plateNumber[index])", 
                                          barTitle: cityNames[index], 
                                          barHeight: Double(plateNumber[index]), 
                                          barColor: rainbowColor())
                                          
                                          
            allCityData.append(newEntry)
            
        }
        
        return allCityData

}

下面是关于CoreChartEntry的其他属性。

  • id = 当使用didTouch方法,并且您想要访问条形图选择的某些数据级别时,这里需要这个id。
  • barTitle = ... 现在您已经知道了它是什么 :)
  • ……其它属性

还有一件事…

optional func didTouch(entryData: CoreChartEntry)

这个方法是可选的,如果您想要通过选择数据级别来在不同图表屏幕之间导航

在这里,data level意味着:使用id在您数据结构中运行查询

完成。

下面是完整的代码,正如您刚刚被告知的那样,它已经在演示项目中实现了。

import CoreCharts

class DemoViewController: UIViewController,CoreChartViewDataSource {

    @IBOutlet weak var barChart: VCoreBarChart!
    
    override func viewDidLoad() {
        super.viewDidLoad()
        
        barChart.dataSource = self
    }
    
    func didTouch(entryData: CoreChartEntry) {
        print(entryData.barTitle)
    }
    
    func loadCoreChartData() -> [CoreChartEntry] {
        
        return getTurkeyFamouseCityList()
        
    }
    
    
    func getTurkeyFamouseCityList()->[CoreChartEntry] {
        var allCityData = [CoreChartEntry]()
        let cityNames = ["Istanbul","Antalya","Ankara","Trabzon","İzmir"]
        let plateNumber = [34,07,06,61,35]
        
        for index in 0..<cityNames.count {
            
            let newEntry = CoreChartEntry(id: "\(plateNumber[index])", 
                                          barTitle: cityNames[index], 
                                          barHeight: Double(plateNumber[index]), 
                                          barColor: rainbowColor())
                                          
                                         
            allCityData.append(newEntry)
            
        }
        
        return allCityData
        
    }
 
}

外观定制

CoreBarChartsDisplayConfig 类

您可以使用CoreBarChartsDisplayConfig类来更改图表的用户界面外观,并且该类包含了一些属性,以下是设置的方法。

直接使用

您可以使用一次性初始化器。

import CoreCharts

class DemoViewController: UIViewController,CoreChartViewDataSource {

    @IBOutlet weak var barChart: VCoreBarChart!
    
    override func viewDidLoad() {
        super.viewDidLoad()
        
        barChart.dataSource = self
        
        barChart.displayConfig = CoreBarChartsDisplayConfig(barWidth: 40.0,
                                                            barSpace: 20.0,
                                                            bottomSpace: 20.0,
                                                            topSpace: 20.0,
                                                            backgroundColor: UIColor.black,
                                                            titleFontSize: 12,
                                                            valueFontSize: 14,
                                                            titleFont: UIFont(),
                                                            valueFont: UIFont(),
                                                            titleLength: 12)
    }

具体使用

您只需使用您所需的。

import CoreCharts

class DemoViewController: UIViewController,CoreChartViewDataSource {

    @IBOutlet weak var barChart: VCoreBarChart!
    
    override func viewDidLoad() {
        super.viewDidLoad()
        
        barChart.dataSource = self
        
        bbarChart.displayConfig.barWidth = 10
        barChart.displayConfig.barSpace = 20
        barChart.displayConfig.titleFontSize = 15
    }

欢迎贡献🎉

版本控制

我们使用SemVer进行版本控制。有关可用版本的信息,请参阅CoreCharts 标签

作者

  • Çağrı ÇOLAK - 高级iOS开发者 - Github
  • Kemal TÜRK - 初级iOS开发者 / Android开发者 - Github

许可协议

本项目遵循MIT开源许可协议 - 详见LICENSE.md文件了解详细信息。

报错

  • 如发现bug,请在问题区域提交issue。

新增特性

  • 您可以在项目区域提出下一个新特性的建议。

问题

  • 请在StackOverflow上使用标签:corecharts-2018并提问。