我是靠谱客的博主 清脆手机,最近开发中收集的这篇文章主要介绍android环形雷达分析图原理,MPAndroidChart3 RadarChart(雷达图)案例,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

先引入一下

implementation 'com.github.PhilJay:MPAndroidChart:v3.1.0'

4ccb28e6d0cf

图片.png

4ccb28e6d0cf

图片.png

布局文件

xmlns:app="http://schemas.android.com/apk/res-auto"

xmlns:tools="http://schemas.android.com/tools"

android:layout_width="match_parent"

android:layout_height="match_parent"

android:orientation="vertical"

tools:context=".RadarActivity">

android:id="@+id/radarChart"

android:layout_width="match_parent"

android:layout_height="match_parent"

/>

activity

package com.example.myapplication;

import androidx.appcompat.app.AppCompatActivity;

import android.graphics.Color;

import android.os.Bundle;

import com.github.mikephil.charting.charts.RadarChart;

import com.github.mikephil.charting.components.AxisBase;

import com.github.mikephil.charting.components.XAxis;

import com.github.mikephil.charting.components.YAxis;

import com.github.mikephil.charting.data.RadarData;

import com.github.mikephil.charting.data.RadarDataSet;

import com.github.mikephil.charting.data.RadarEntry;

import com.github.mikephil.charting.formatter.IAxisValueFormatter;

import com.github.mikephil.charting.formatter.ValueFormatter;

import com.github.mikephil.charting.interfaces.datasets.IRadarDataSet;

import java.util.ArrayList;

import java.util.List;

public class RadarActivity extends AppCompatActivity {

private RadarChart radarChart;

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_radar);

radarChart = findViewById(R.id.radarChart);

setChartData2_2();

XAxis xAxis = radarChart.getXAxis();

// 模拟X轴标签数据

xAxis.setTextColor(Color.GRAY); // 文本颜色为灰色

xAxis.setTextSize(20f); // 文本大小为18dp

// 设置标签的显示格式

xAxis.setValueFormatter(new ValueFormatter() {

@Override

public String getFormattedValue(float value) {

final String[] weekStrs = new String[]{"美貌", "智慧", "爱我的心", "会胖多少", "美貌加持"};

System.out.println(weekStrs[(int) value]);

// return super.getFormattedValue(value);

return weekStrs[(int) value];

}

});

YAxis yAxis = radarChart.getYAxis();

yAxis.setAxisMaximum(70f); // 要达到100需要把该值设为80,至于原因可以试着向下调小和向上调大看看效果就

}

/**

* 设置图表数据

*/

private void setChartData2_2() {

/* RadarData的List类型参数的构造方法 */

List dataSets = new ArrayList<>();

dataSets.add(creatingData("灵魂"));

RadarData data = new RadarData(dataSets);

radarChart.setData(data);

}

/**

* 创建虚拟图表数据

* @param lable 数据标签

* @return

*/

private RadarDataSet creatingData(String lable) {

List yVals = new ArrayList<>();

for (int i = 0; i < 5; i++) {

yVals.add(new RadarEntry((float) (Math.random() * 100))); // 生成1-100的随机数

}

RadarDataSet ds = new RadarDataSet(yVals, lable);

ds.setColor(Color.parseColor("#FFC1C1"));

ds.setDrawFilled(true); // 绘制填充,默认为false

ds.setFillColor(Color.parseColor("#FFC1C1")); // 填充颜色

ds.setFillAlpha(51); // 填充内容透明度

ds.setDrawValues(false); // 指定那组数据(RadarDataSet对象)不显示标签

return ds;

}

/**

* 创建一组虚拟图表数据

* @param lable 标签

* @param color 颜色

* @return

*/

private RadarDataSet creatingData(String lable, int color) {

RadarDataSet ds = creatingData(lable);

ds.setColor(color);

// ds.setColor(color, 102); // 第二个参数(alpha)设置颜色的透明度

ds.setDrawFilled(true); // 绘制填充,默认为false

ds.setFillColor(color); // 填充颜色

ds.setFillAlpha(51); // 填充内容透明度

ds.setDrawValues(false); // 指定那组数据(RadarDataSet对象)不显示标签

return ds;

}

}

效果图

4ccb28e6d0cf

图片.png

最后

以上就是清脆手机为你收集整理的android环形雷达分析图原理,MPAndroidChart3 RadarChart(雷达图)案例的全部内容,希望文章能够帮你解决android环形雷达分析图原理,MPAndroidChart3 RadarChart(雷达图)案例所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(36)

评论列表共有 0 条评论

立即
投稿
返回
顶部