android - kotlin 中的 MPAndroid 饼图

标签 android android-studio kotlin pie-chart mpandroidchart

import android.os.Bundle
import androidx.appcompat.app.AppCompatActivity
import com.github.mikephil.charting.charts.PieChart
import com.github.mikephil.charting.data.PieData
import com.github.mikephil.charting.data.PieDataSet
import com.github.mikephil.charting.utils.ColorTemplate
import java.util.*


class PieChartActivity : AppCompatActivity() {

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.piechart)
        val pieChart = findViewById<PieChart>(R.id.piechart)

        val NoOfEmp= ArrayList<GraphModels>()

        NoOfEmp.add(GraphModels(945f, 0))
        NoOfEmp.add(GraphModels(1040f, 1))
        NoOfEmp.add(GraphModels(1133f, 2))
        NoOfEmp.add(GraphModels(1240f, 3))
        NoOfEmp.add(GraphModels(1369f, 4))
        NoOfEmp.add(GraphModels(1487f, 5))
        NoOfEmp.add(GraphModels(1501f, 6))
        NoOfEmp.add(GraphModels(1645f, 7))
        NoOfEmp.add(GraphModels(1578f, 8))
        NoOfEmp.add(GraphModels(1695f, 9))
        val dataSet = PieDataSet(NoOfEmp, "Number Of Employees")

        val year= ArrayList<GraphModel>()
        year.add(GraphModel("2008"))
        year.add(GraphModel("2009"))
        year.add(GraphModel("2010"))
        year.add(GraphModel("2011"))
        year.add(GraphModel("2012"))
        year.add(GraphModel("2013"))
        year.add(GraphModel("2014"))
        year.add(GraphModel("2015"))
        year.add(GraphModel("2016"))
        year.add(GraphModel("2017"))

        val data = PieData(year, dataSet)
        pieChart.data = data
        dataSet?.setColors(*ColorTemplate.COLORFUL_COLORS)
        pieChart.animateXY(5000, 5000)
    }


}

**我想编写MPAndroid图库的kotlin代码链接在这里https://javapapers.com/android/android-chart-example-app-using-mpandroidchart/ 我想在我的项目中实现这个帮助我解决问题。 **

最佳答案

您可以通过PieChart Example了解更多信息,以及关于 MPAndroidChart 的完整文档。这是一个漂亮的图形表示库。

希望这个回答对你有帮助。

val NoOfEmp = ArrayList<PieEntry>()

NoOfEmp.add(PieEntry(945f, "2008"))
NoOfEmp.add(PieEntry(1040f, "2009"))
NoOfEmp.add(PieEntry(1133f, "2010"))
NoOfEmp.add(PieEntry(1240f, "2011"))
NoOfEmp.add(PieEntry(1369f, "2012"))
NoOfEmp.add(PieEntry(1487f, "2013"))
NoOfEmp.add(PieEntry(1501f, "2014"))
NoOfEmp.add(PieEntry(1645f, "2015"))
NoOfEmp.add(PieEntry(1578f, "2016"))
NoOfEmp.add(PieEntry(1695f, "2017"))
val dataSet = PieDataSet(NoOfEmp, "Number Of Employees")

dataSet.setDrawIcons(false)
dataSet.sliceSpace = 3f
dataSet.iconsOffset = MPPointF(0F, 40F)
dataSet.selectionShift = 5f
dataSet.setColors(*ColorTemplate.COLORFUL_COLORS)

val data = PieData(dataSet)
data.setValueTextSize(11f)
data.setValueTextColor(Color.WHITE)
pieChart.data = data
pieChart.highlightValues(null)
pieChart.invalidate()
pieChart.animateXY(5000, 5000)

关于android - kotlin 中的 MPAndroid 饼图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60169560/

相关文章:

android - 类型转换器不适用于@Query 中的集合

java - 按名称获取 ArrayList<NameValuePair> 值

java - Android LocationManager中NMEA语句来源

android - 无法生成Gradle文件

android - ContentHandler 以错误的顺序进行回调

java - 在android布局中显示多个cardview在另一个之上

android-studio - “将 java 代码(不是文件)转换为 Kotlin 的快捷方式

android-studio - 我可以在 Android Studio 3.6 中自定义 "Code, Split, Design"的图标吗?

android - 此错误的原因是什么以及如何解决?

android - Kotlin型干扰失败