微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何在Kotlin中设置mpandoroidchart的颜色?

如何解决如何在Kotlin中设置mpandoroidchart的颜色?

我想设置图表的数据颜色
因此,我发现MPAndroidchart是示例,而示例是Java而不是Kotlin。

这是我的Kotlin资料来源。如何更改颜色?
另外,我想在条形图下方制作条形图中的标签(如第一张图片),然后在Piechart中创建标签
请帮帮我.. T_T

override fun onCreate(savedInstanceState: Bundle?) {
    super.onCreate(savedInstanceState)
    setContentView(R.layout.activity_result)
    val tabHost = findViewById<TabHost>(R.id.TabHost)
    tabHost.setup()
    //종합 탭 소스
    val tabSpecTotal = tabHost.newTabSpec("Total").setIndicator("종합")
    tabSpecTotal.setContent(R.id.total)

    //남녀 성비 그래프
    sexRateChart.setUsePercentValues(true)
    sexRateChart.description.setEnabled(false)
    sexRateChart.setExtraOffsets(5f,10f,5f,5f)
    sexRateChart.dragDecelerationFrictionCoef = 0.95f
    sexRateChart.isDrawHoleEnabled = false
    sexRateChart.setHoleColor(Color.BLACK)
    sexRateChart.transparentCircleRadius = 61f

    val sexValues = ArrayList<PieEntry>() // 데이터 삽입
    sexValues.add(PieEntry(63f,"남성"))
    sexValues.add(PieEntry(37f,"여성"))

    sexRateChart.animateY(2000,Easing.EaseInOutCubic) //애니메이션 효과 설정

    val sexDataSet = PieDataSet(sexValues,"성별")
    sexDataSet.sliceSpace = 3f
    sexDataSet.selectionShift = 2f

    val sexData = PieData((sexDataSet))
    sexData.setValueTextSize(10f)
    sexData.setValueTextColor(Color.BLACK)
    sexRateChart.setData(sexData)
    sexRateChart.invalidate()
    //남녀 성비 끝

    //연령대 막대그래프
    ageRateChart.setExtraOffsets(5f,5f)
    val ageValues = ArrayList<BarEntry>()
    ageValues.add(BarEntry(0f,"10대"))
    ageValues.add(BarEntry(1f,30f,"20대"))
    ageValues.add(BarEntry(2f,50f,"30대"))
    ageValues.add(BarEntry(3f,"40대"))
    ageValues.add(BarEntry(4f,40f,"50대"))
    ageValues.add(BarEntry(5f,"60대 이상"))

    ageRateChart.animateY(4000,Easing.EaseInOutCubic)

    val ageDataSet = BarDataSet(ageValues,"연령대")
    ageDataSet.setColors(intArrayOf(R.color.red1,R.color.red2,R.color.red3,R.color.red4),Context)


    val ageData = BarData(ageDataSet)
    ageData.barWidth = 1f
    ageRateChart.data = ageData
    ageRateChart.setFitBars(true)
    ageRateChart.invalidate()
    //연령대 막대그래프 끝

enter image description here

代码结果:

enter image description here

enter image description here

解决方法

您可以使用window.location.href

设置颜色
fills

并用 val startColor1 = ContextCompat.getColor(this,android.R.color.holo_orange_light) val startColor2 = ContextCompat.getColor(this,android.R.color.holo_blue_light) val startColor3 = ContextCompat.getColor(this,android.R.color.holo_orange_light) val startColor4 = ContextCompat.getColor(this,android.R.color.holo_green_light) val startColor5 = ContextCompat.getColor(this,android.R.color.holo_red_light) val gradientFills: MutableList<Fill> = ArrayList() with(gradientFills) { add(Fill(startColor1)) add(Fill(startColor2)) add(Fill(startColor3)) add(Fill(startColor4)) add(Fill(startColor5)) } val ageDataSet = BarDataSet(ageValues,"연령대") ageDataSet.fills = gradientFills

标记
ValueFormatter

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。