Hello,
I have a line series with 500k to 8 million data points and I use the StrokePaletteProvider to highlight certain peaks in different colors. But the colors only appear right at a certain zoom level, without zooming in it is a mixture of my default line color and the chosen StrokePaletteProvider color. Is there anything I can do about this?
- Roland D asked 5 years ago
- last active 5 years ago
Has anyone ever encountered this problem?
Could you give me a help? How to solve this problem?
The app didn’t run in the method of ‘getStrokeColors()’, when I debugged.
public class BubbleChartFragment extends ExampleBaseFragment {
...
{
...
FastBubbleRenderableSeries mRSeries = sciChartBuilder.newBubbleSeries()
.withDataSeries(dataSeries)
.withZScaleFactor(zScaleFactor / 10f)
.withBubbleBrushStyle(new SolidBrushStyle(0xffff0000))
.withAutoZRange(false)
.withStrokeStyle(0xff00ff00, 20f)
.withPaletteProvider(new StrokePaletteProvider())
.build();
}
private class StrokePaletteProvider extends PaletteProviderBase<FastBubbleRenderableSeries> implements IStrokePaletteProvider {
private final IntegerValues colors = new IntegerValues();
private final int[] desiredColors = new int[]{0xFF00FF00, 0xFF0000FF};
protected StrokePaletteProvider() {
super(FastBubbleRenderableSeries.class);
}
@Override
public void update() {
final BubbleRenderPassData currentRenderPassData = (BubbleRenderPassData) renderableSeries.getCurrentRenderPassData();
final int size = currentRenderPassData.pointsCount();
colors.setSize(size);
final int[] colorsArray = colors.getItemsArray();
final int[] indices = currentRenderPassData.indices.getItemsArray();
for (int i = 0; i < size; i++) {
final int index = indices[i];
colorsArray[i] = desiredColors[index % 2];
}
}
@Override
public IntegerValues getStrokeColors() {
return colors;
}
}
}
- SiYuan Ou asked 5 years ago
- last active 5 years ago