OSS まとめてみました!

個人的に面白いと思ったオープンソースソフトウェア(OSS)をまとめてみました!

MENU

Swift できれいなグラフを描画したいなら!「Charts」

概要

iOS アプリを開発するときに、グラフを描画する際はどのようなライブラリを使用していますでしょうか?

Android アプリの場合、以下に挙げた MPAndroidChart が 有名どころでしょうか。

github.com

iOS アプリ開発者にとって、上記で掲載したようなきれいにグラフを描画するためのライブラリがなかった時に、 Daniel Cohen Gindi 氏が iOS でも MPAndroidChart のようなライブラリが欲しい!と一念発起して開発を進めたものがあります。

それが、今回紹介する OSS 「Charts」になります。

本ライブラリは Android アプリで利用可能なライブラリ「MPAndroidChart」と操作方法が非常に似通っているということもあり、Android/iOS アプリ両開発時に学習コストが低くて済むと謳われています。

またそのほかにも、README では以下のような特徴があると明記されています。

  • 8 種類のチャートタイプ
  • 両軸でのスケーリング(タッチ操作、ピンチズームを使用)
  • X 軸、Y 軸のカスタマイズ性
  • 値の強調表示、カスタマイズ可能なポップアップ表示
  • チャートの保存(PNG/JPEG
  • 事前定義されたカラーテンプレート
  • 凡例表示、など

それでは使い方などを見てみましょう。

利用手順

インストール方法は以下の 3 パターンが利用可能です。

CocoaPods を利用したインストール

Profile に pod 'Charts を追加します。

Carthage を利用したインストール

「Charts」 に Carthage のビルド済みバイナリが含まれるようになったそうですので、新規リリース時には以下のコマンドを利用してバイナリをビルドして利用することができます。

carthage build --no-skip-current && carthage archive Charts

Swift Package Manager Install

以下のコードを追記します。

dependencies: [
    .package(url: "https://github.com/danielgindi/Charts.git", .upToNextMajor(from: "4.0.0"))
]

使用感

今回は README に記載してあるイメージ図を基に、グラフの様子を確認してみました。

サンプルですが、本 OSS を利用することで以下のようなグラフを簡単に作成することができるというのは、開発者にとってはなかなかうれしいですね!

  • 折れ線グラフ(凡例付き、シンプルなデザイン)

  • 折れ線グラフ(凡例付き、シンプルなデザイン)

  • 折れ線グラフ(立方線)

  • 折れ線グラフ(グラデーション塗りつぶし)

  • 結合チャート(棒グラフと折れ線グラフ)

  • 棒グラフ(凡例付き、シンプルなデザイン)

  • 棒グラフ(グループ化されたデータセット

  • 水平-棒グラフ

  • 円グラフ(選択機能あり)

  • 散布図(正方形、三角形、円などを含む)

  • ろうそく図(財務データ用)

  • バブルチャート(バブルで覆われた領域は値を示す)

  • レーダーチャート(蜘蛛の巣チャート)

まとめ

今回は、iOS アプリ開発時にきれいにグラフを描画するためのライブラリ「Charts」をご紹介しました。

Android 版で有名なグラフ描画ツール「MPAndroidChart」と同じような使い方でグラフを描画することができるという点もあり、Android 開発者にとっても、これからアプリ開発進めてまずは iOS、次は Android という方にとっても、共通する部分はたくさんあるということなので、アプリ開発でグラフを描画する際にはとても重宝するライブラリではないでしょうか。

なお、今回紹介した 「Charts」 は Android 版の OSS 「MPAndroidChart」と 95% 同じということだったので、ドキュメントなどは本家本元の「MPAndroidChart」を参考にすること、とありました(なかなか斬新ですね!)。

もしドキュメントを参照したい方がいらっしゃったら、以下からドキュメントを参照してみてください。

github.com

iOS 版で きれいなグラフを描画してアプリ開発を行いたいと思っている方は、ぜひ一度こちらの iOS 版グラフ描画作成ツール「Charts」をお試ししてみてはいかがでしょうか。

ライセンス

Apache License 2.0

リンク

github.com