public void showRadarChart(final List<String> xData, List<List<Float>> yDatas, List<String> names, List<Integer> colors) {
initRadarChart();
xAxis.setValueFormatter(new IAxisValueFormatter() {
@Override
public String getFormattedValue(float value, AxisBase axis) {
return xData.get((int) value % xData.size());
}
});
List<IRadarDataSet> sets = new ArrayList<>();
for (int i = 0; i < yDatas.size(); i++) {
ArrayList<RadarEntry> yValues = new ArrayList<>();
for (int j = 0; j < yDatas.get(i).size(); j++) {
yValues.add(new RadarEntry(yDatas.get(i).get(j), j));
}
RadarDataSet radarDataSet = new RadarDataSet(yValues, names.get(i));
radarDataSet.setColor(colors.get(i));
radarDataSet.setDrawFilled(true);
radarDataSet.setLineWidth(2f);
sets.add(radarDataSet);
}
RadarData data = new RadarData(sets);
data.setValueTextSize(8f);
data.setDrawValues(true);
mRadarChart.setData(data);
mRadarChart.invalidate();
}