在Android上使用画布在两条线之间绘制区域

在Android上使用画布在两条线之间绘制区域,android,graphics,canvas,statistics,Android,Graphics,Canvas,Statistics,我正在为我的应用程序开发一个简单的统计图形类。我已经尝试过aChartEngine和其他更多,但我更喜欢使用我自己的类。 我正在使用包含Android的Canvas类绘制图形,但问题是我不知道如何填充线条和底部边框之间的区域。 现在,矩形并没有填满所有的区域,很明显,你知道有什么解决办法吗?非常感谢 使用a,其中a已调用 ++感谢这一点。只想在上次“lineTo”调用之前添加它,您可能应该调用类似于fillPath.lineTo(x,0)的东西以便最后一行(如果在轴上方)不会减少,留下一个未填充

我正在为我的应用程序开发一个简单的统计图形类。我已经尝试过aChartEngine和其他更多,但我更喜欢使用我自己的类。 我正在使用包含Android的Canvas类绘制图形,但问题是我不知道如何填充线条和底部边框之间的区域。 现在,矩形并没有填满所有的区域,很明显,你知道有什么解决办法吗?非常感谢

使用a,其中a已调用


++感谢这一点。

只想在上次“lineTo”调用之前添加它,您可能应该调用类似于
fillPath.lineTo(x,0)的东西以便最后一行(如果在轴上方)不会减少,留下一个未填充的区域。@谢谢,我已将其添加到帖子中。这是一个很好的调用(出于某种原因,我假设
lastPoint.y
将为0)。您不需要调用
fillPath.close()
或其他任何东西来将行结束返回到开始。或者
lineTo
返回到起始点是否足以让
Path
找到它。@doomskight我没有在任何代码中调用
close()
。。。这可能是一个最佳实践,但不是必需的。
Path fillPath = new Path();
fillPath.moveTo(0, 0); // Your origin point
fillPath.lineTo(x1, y1); // First point
// Repeat above line for all points on your line graph
fillPath.lineTo(xN, yN); // Final point
fillPath.lineTo(xN, 0); // Draw from final point to the axis ++
fillPath.lineTo(0, 0); // Same origin point
yourCanvas.drawPath(fillPath, /* Your paint */);