iOS-Chartsの折れ線グラフをグラデーションにカスタマイズしたい

実現したいこと

イメージ説明

前提

ここに質問の内容を詳しく書いてください。
iOS-Chartsというライブラリーを使って折れ線グラフを描画するシステムを作っています。

折れ線グラフをグラデーションにしようとしたところ カスタマイズ が反映されないエラーが発生しました。

発生している問題・エラーメッセージ

カスタマイズが反映されません。

該当のソースコード

Swift

1private func createLineChart() {2 // Chart dataSet準備3 let entries = self.xAxisCountArray.enumerated().map { ChartDataEntry(x: Double($0.offset), y: Double($0.element)) }4 let dataSet = LineChartDataSet(entries: entries)5 6 7 // 問題の箇所8 // テスト:グラデーション9 let gradientColors = [#colorLiteral(red: 1, green: 1, blue: 1, alpha: 1).cgColor, #colorLiteral(red: 0.2196078449, green: 1, blue: 0.8549019694, alpha: 1).withAlphaComponent(0.3).cgColor] as CFArray // Colors of the gradient10 let colorLocations:[CGFloat] = [0.7, 0.0] // Positioning of the gradient11 let gradient = CGGradient.init(colorsSpace: CGColorSpaceCreateDeviceRGB(), colors: gradientColors, locations: colorLocations) // Gradient Object12 dataSet.fill = LinearGradientFill(gradient: gradient!, angle: 90.0) // Set the Gradient13 14 // 線の太さ15 dataSet.lineWidth = 516 // 各プロットのラベル表示17 dataSet.drawValuesEnabled = false18 // 各プロットの丸表示19 dataSet.drawCirclesEnabled = true20 // 各プロットの丸の大きさ21 dataSet.circleRadius = 222 // 各プロットの丸の色23 dataSet.circleColors = [UIColor.lightGray]24 25 // 作成したデータセットをLineChartViewに追加26 lineChartView.data = LineChartData(dataSet: dataSet)27 28 // 横軸29 // X軸のラベルの位置を下に設定30 lineChartView.xAxis.labelPosition = .bottom 31 // ラベルの色32 lineChartView.xAxis.labelTextColor = .white 33 // X軸の線、グリッドを非表示にする34 lineChartView.xAxis.drawGridLinesEnabled = false35 lineChartView.xAxis.drawAxisLineEnabled = false36 // 右側のY座標軸は非表示にする37 lineChartView.rightAxis.enabled = false38 // ラベルの数39 lineChartView.xAxis.labelCount = Int(self.countArray.count+1)40 41 // 縦軸42 // Y座標の開始値43 lineChartView.leftAxis.axisMinimum = 044 // Y座標の終了値45 lineChartView.leftAxis.axisMaximum = 10046 47 // ラベル(目盛):表示しない48 lineChartView.leftAxis.drawLabelsEnabled = true49 // 不明50 lineChartView.leftAxis.drawZeroLineEnabled = true51 // 0のフォントカラー52 lineChartView.leftAxis.zeroLineColor = .systemGray 53 // ラベルの数54 lineChartView.leftAxis.labelCount = 3055 // ラベルの色56 lineChartView.leftAxis.labelTextColor = .white 57 // グリッドの色(=横線のこと)58 lineChartView.leftAxis.gridColor = .clear//.systemGray59 // 横線:非表示60 lineChartView.leftAxis.drawAxisLineEnabled = false61 62 // =========================================63 // その他64 // =========================================65 // プロットの表示(今回は表示しない)66 dataSet.drawCirclesEnabled = false67 //曲線にする68 dataSet.mode = .cubicBezier 69 // 凡例を非表示70 lineChartView.legend.enabled = false71 // タップでプロットを選択できないようにする72 lineChartView.highlightPerTapEnabled = false73 // ピンチズームオフ74 lineChartView.pinchZoomEnabled = false75 // ダブルタップズームオフ76 lineChartView.doubleTapToZoomEnabled = false77 // アニメーションをつける78 lineChartView.animate(xAxisDuration: 1.0, yAxisDuration: 1.3, easingOption: .easeInCubic)79 }80

試したこと

https://qiita.com/orihomotakanat/items/b554721b047ba63b28c8
の記事を読んで試してみましたが 折れ線グラフの折れ線部分しかグラデーションが反映されませんでした。

イメージ説明

補足情報(FW/ツールのバージョンなど)

iOS-Charts初心者なのでお手柔らかにお願いいたします。

コメントを投稿

0 コメント