我需要实现一个类似于下图的水平条形图。在这里,我不需要与图表一起显示轴,但我仍然需要想象有一个:
我怎样才能做到这一点?
您可以通过使用 UIBezierPath 和 CAShapeLayer 轻松做到这一点
您可以使用以下函数绘制水平条
func drawLine(startpoint start:CGPoint, endpint end:CGPoint, linecolor color: CGColor , linewidth widthline:CGFloat){
var path = UIBezierPath()
path.moveToPoint(start)
path.addLineToPoint(end)
var shapeLayer = CAShapeLayer()
shapeLayer.path = path.CGPath
shapeLayer.strokeColor = color
shapeLayer.lineWidth = widthline
view.layer.addSublayer(shapeLayer)
}
如何快速调用这个函数是
let start = CGPoint(x:20,y:100)
let end = CGPoint(x:200,y:100)
//red part of line
drawLine(startpoint: start, endpint: end,linecolor: UIColor.redColor().CGColor,linewidth:11.0)
你可以在这里找到完整的代码
http://bestarticlesall.blogspot.com/2014/12/draw-horizontal-bar-chart-using-swift.html