【发布时间】:2016-03-11 07:40:47
【问题描述】:
我正在制作一个需要显示可见光谱(400nm 到 780nm)的应用程序。我正在使用MPAndroidchart。我将wavelength 转换为color 并渲染了光谱。以下是该应用程序的屏幕截图。我可以在背景网格上显示渲染的光谱,但如何在lineDataset 中显示。 LineDataSet 只有一个功能SetFillColor(int)。我想用这个Paint 填充lineDataset。这是我的代码。
Paint paint = new Paint();// = chart.setPaint();
int[] colors =new int[7];
float[] pos = {0.0f, 0.15f, 0.275f, 0.325f, 0.5f,0.6625f,1};
final float[] bands = { 380, 440, 490, 510, 580, 645, 780};
for(int i =0;i<bands.length;i++) {
colors[i]=Wavelength.wvColor(bands[i], gamma);
//Wavelength.wvColor is the function which returns the `int`.
}
paint.setShader(new LinearGradient(0, 0, chart.getWidht(), 0, colors, pos, Shader.TileMode.CLAMP));
在chart,我可以很容易地用下面的代码显示它
chart.setPaint(paint, Chart.PAINT_GRID_BACKGROUND);
问题:如何使用 linearGradient 填充我的LineDataset 或填充颜色数组?
【问题讨论】:
-
只需将渐变设置为图表的背景!
-
如何设置?抱歉太天真了。
-
我不想将其设置为图表背景,我想将其设置为线条集的填充颜色。
标签: android paint mpandroidchart linear-gradients spectrum