SwiftのフレームワークChartsを使うと円グラフが描ける。
![](https://ymgsapo.com/wp-content/uploads/2020/06/Simulator-Screen-Shot-iPhone-SE-2nd-generation-2020-06-10-at-12.25.45-side.png)
左側が普通に書いた場合。デフォルトはDoubleで表示されるので、「1.00」のように余計な0が含まれる。
右側は今回やりたいこと。「1」のように余計な0は含めない。
そもそもデータを入れるときにIntにすれば良いのでは?
と疑問に思う方もいるだろう。
私もその一人だった。
しかし、PieChart
のデータを格納する`PieChartDataEntry`をみるとvalueはDoubleしか用意されていない。
![](https://ymgsapo.com/wp-content/uploads/2020/06/スクリーンショット-2020-06-10-12.30.39.png)
!!!
まさかの展開。
しょうがないのでDoubleで格納しデータフォーマットを変える。
(何だかコードが長くなって嫌だな。)
let data = PieChartData(dataSet: pieChartDataSet) // 最低値を0に(Double→Int) let formatter = NumberFormatter() formatter.minimumFractionDigits = 0 data.setValueFormatter(DefaultValueFormatter(formatter: formatter))
これで0以上の値のみ表示できるようになる。
参考:
https://stackoverflow.com/questions/44786924/swift-charts-chart-value-int-instead-of-double