我正在使用MPAndroidChart,并需要使用ScatterChart绘制多个数据集。由于数据集数量是动态的,我使用了一种逻辑来为每个数据集创建颜色和形状的组合。生成的图表如下所示。如您所见,此示例中有十个数据集,每个数据集都用唯一的形状+颜色组合表示。问题在于图例形状。如何更改图例形状以与数据集形状相匹配?
图表:
源代码:
![enter image description here](https://istack.dev59.com/vOmjP.webp)
private static final int SCATTER_SHAPES_MOD = 4; //there are four shapes
private static final int SCATTER_COLOR_MOD = 5; //there are five colors
for (int i=0; i < dataSeries.size(); i++) {
ScatterDataSet set = new ScatterDataSet(dataSeries.get(i), choiceArray[i]);
set.setScatterShape(ScatterShapeArray[i % SCATTER_SHAPES_MOD]);
set.setColor(ColorTemplate.COLORFUL_COLORS[i % SCATTER_COLOR_MOD]);
set.setScatterShapeSize(10f);
set.setDrawValues(false); // Hide data labels
dataSets.add(set); // add the dataset
}
if (dataSeries.size() > 0) {
data = new ScatterData(xVals, dataSets);
// Set chart data
chart.setData(data);
}