Search in sources :

Example 1 with CustomScatterShapeRenderer

use of com.xxmassdeveloper.mpchartexample.custom.CustomScatterShapeRenderer in project MPAndroidChart by PhilJay.

the class ScatterChartActivity method onProgressChanged.

@Override
public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) {
    tvX.setText("" + (mSeekBarX.getProgress() + 1));
    tvY.setText("" + (mSeekBarY.getProgress()));
    ArrayList<Entry> yVals1 = new ArrayList<Entry>();
    ArrayList<Entry> yVals2 = new ArrayList<Entry>();
    ArrayList<Entry> yVals3 = new ArrayList<Entry>();
    for (int i = 0; i < mSeekBarX.getProgress(); i++) {
        float val = (float) (Math.random() * mSeekBarY.getProgress()) + 3;
        yVals1.add(new Entry(i, val));
    }
    for (int i = 0; i < mSeekBarX.getProgress(); i++) {
        float val = (float) (Math.random() * mSeekBarY.getProgress()) + 3;
        yVals2.add(new Entry(i + 0.33f, val));
    }
    for (int i = 0; i < mSeekBarX.getProgress(); i++) {
        float val = (float) (Math.random() * mSeekBarY.getProgress()) + 3;
        yVals3.add(new Entry(i + 0.66f, val));
    }
    // create a dataset and give it a type
    ScatterDataSet set1 = new ScatterDataSet(yVals1, "DS 1");
    set1.setScatterShape(ScatterChart.ScatterShape.SQUARE);
    set1.setColor(ColorTemplate.COLORFUL_COLORS[0]);
    ScatterDataSet set2 = new ScatterDataSet(yVals2, "DS 2");
    set2.setScatterShape(ScatterChart.ScatterShape.CIRCLE);
    set2.setScatterShapeHoleColor(ColorTemplate.COLORFUL_COLORS[3]);
    set2.setScatterShapeHoleRadius(3f);
    set2.setColor(ColorTemplate.COLORFUL_COLORS[1]);
    ScatterDataSet set3 = new ScatterDataSet(yVals3, "DS 3");
    set3.setShapeRenderer(new CustomScatterShapeRenderer());
    set3.setColor(ColorTemplate.COLORFUL_COLORS[2]);
    set1.setScatterShapeSize(8f);
    set2.setScatterShapeSize(8f);
    set3.setScatterShapeSize(8f);
    ArrayList<IScatterDataSet> dataSets = new ArrayList<IScatterDataSet>();
    // add the datasets
    dataSets.add(set1);
    dataSets.add(set2);
    dataSets.add(set3);
    // create a data object with the datasets
    ScatterData data = new ScatterData(dataSets);
    data.setValueTypeface(mTfLight);
    mChart.setData(data);
    mChart.invalidate();
}
Also used : Entry(com.github.mikephil.charting.data.Entry) IScatterDataSet(com.github.mikephil.charting.interfaces.datasets.IScatterDataSet) ScatterDataSet(com.github.mikephil.charting.data.ScatterDataSet) IScatterDataSet(com.github.mikephil.charting.interfaces.datasets.IScatterDataSet) CustomScatterShapeRenderer(com.xxmassdeveloper.mpchartexample.custom.CustomScatterShapeRenderer) ArrayList(java.util.ArrayList) ScatterData(com.github.mikephil.charting.data.ScatterData)

Aggregations

Entry (com.github.mikephil.charting.data.Entry)1 ScatterData (com.github.mikephil.charting.data.ScatterData)1 ScatterDataSet (com.github.mikephil.charting.data.ScatterDataSet)1 IScatterDataSet (com.github.mikephil.charting.interfaces.datasets.IScatterDataSet)1 CustomScatterShapeRenderer (com.xxmassdeveloper.mpchartexample.custom.CustomScatterShapeRenderer)1 ArrayList (java.util.ArrayList)1