[SWIFT 3] Graphique
Hello
Je suis en train d'essayer d'implémenter des graphiques dans mon application et j'ai un soucis..
J'utilise ça : https://github.com/danielgindi/Charts(car il à l'air de faire plein de trucs facilement)
Après avoir dézipper l'archive :
- J'ai glissé Charts.xcodeproj dans mon projet.
- Je l'ai ajouté dans Embedded Binaries, d'ailleurs quand je l'ajoute, il n'y a que celui qui finit par macOs (alors que d'habitude j'ai toujours un truc qui finit par iOs.. déjà , je trouve ça bizarre..)
- J'ai créer un Chart-Bridging-Header.h dans mon projet avec dedans :
#import "Charts.h"
Est-ce-que j'ai bien fait de faire ça ?
Dans mon storyboard :
- J'ai ajouté une View
- Dans identify inspector, Custom Class, j'ai mis : Class = BarChartView, Module = Charts
Ensuite, voici mon code :
import UIKit
import Charts
class StatistiqueSafetyCheckViewController: UIViewController {
@IBOutlet weak var lineChartView: LineChartView! // C'est mon UIView
override func viewDidLoad() {
super.viewDidLoad()
let populationData :[Int : Double] = [
1990 : 123456.0,
2000 : 233456.0,
2010 : 343456.0
]
let ySeries = populationData.map { x, y in
return ChartDataEntry(x: Double(x), y: y)
}
let data = LineChartData()
let dataset = LineChartDataSet(values: ySeries, label: "Hello")
dataset.colors = [UIColor.red]
data.addDataSet(dataset)
self.lineChartView.data = data
self.lineChartView.gridBackgroundColor = UIColor.black
self.lineChartView.xAxis.drawGridLinesEnabled = true;
self.lineChartView.xAxis.labelPosition = XAxis.LabelPosition.bottom
self.lineChartView.chartDescription?.text = "Test ?"
}
override open func viewWillAppear(_ animated: Bool) {
self.lineChartView.animate(xAxisDuration: 1.0, yAxisDuration: 1.0)
}
}
Lorsque je lance mon appli, je n'ai aucun graphique, pourtant j'ai l'impression que ça fonctionne vu que j'ai quand même le contour, etc etc.. (voir pièce jointe)
Quelqu'un à déjà utiliser ce framework ?
Où est-ce-que j'ai louper un truc pour afficher mon graphique ?
Merci de votre aide
Réponses
Ok j'ai rien dit.. ça fonctionne..
C'est juste que j'avais pas de donnée dans un axe..
Avec cet exemple, ça fonctionne vachement mieux ^^
Bon bah j'vais continuer la découverte de ce framework
Pourquoi n'as-tu pas utilisé CocoaPods ou Carthage ?
Sinon, je t'invite à regarder l'app de démo qui devrait t'aider quand ça bloque.
J'sais pas, j'les ai jamais utilisé, c'est encore brouillon dans ma tête ces trucs là (alors que j'ai quand même l'impression que c'est la base mais bon.. j'me suis toujours débrouillé sans ^^), j'trouve ça plus simple de drag and droppé dans le projet.
C'est justement l'app de démo qui m'a aidé.. en fait fallait ouvrir l'app de démo de mac (en swift) et pas d'iOs (en objective-C)..
D'ailleurs c'est normal de pouvoir ajouter dans les Embedded Binaries, les frameworks pour mac ?
ça va pas poser soucis quelque part après ?