我想画一个垂直的单条形图。我试图使用 DrawRect 来做到这一点,但无法做到。如果可以通过提供起点和终点以更改颜色来轻松完成此操作,是否可以帮助我知道这一点。
谢谢
如果您有自定义视图,只需绘制所需的线条和矩形即可。例如:
- (void)drawRect:(CGRect)rect
{
CGAffineTransform t = CGAffineTransformMakeScale(1, -1);
self.transform = t;
CGFloat baseline = 50;
CGFloat inset = 40;
CGFloat barWidth = 20;
CGFloat barHeight = 80;
CGRect r = CGRectMake(inset + barWidth, baseline, barWidth, barHeight);
UIBezierPath *p = [UIBezierPath bezierPathWithRect:r];
[[UIColor redColor] set];
[p fill];
p = [UIBezierPath bezierPath];
[p moveToPoint:CGPointMake(inset, baseline)];
[p addLineToPoint:CGPointMake(inset + 3 * barWidth, baseline)];
[[UIColor blackColor] set];
[p stroke];
}
产生这个:
我用-drawRect:
上面的方法创建了一个 UIView 子类,并创建了一个窗口大小的视图实例。请注意,我使用变换翻转了坐标系——您不必这样做,但在左下角绘制原点会更容易。
试试这个
1. http://www.raywenderlich.com/13271/how-to-draw-graphs-with-core-plot-part-2
2 OVGraph.- 图形库