Ios 具有缩放功能的图表

Ios 具有缩放功能的图表,ios,objective-c,graph,charts,uiscrollview,Ios,Objective C,Graph,Charts,Uiscrollview,我必须制作如下图表: 不知何故,我使用bezierPath、CAShapeLayer和动画制作了这张图。但是现在我想添加缩放功能。缩放代码如下: - (UIView *)viewForZoomingInScrollView:(UIScrollView *)scrollView { return _graphView; } - (void)scrollViewDidEndZooming:(UIScrollView *)scrollV withView:(UIView *)view at

我必须制作如下图表:

不知何故,我使用bezierPath、CAShapeLayer和动画制作了这张图。但是现在我想添加缩放功能。缩放代码如下:

- (UIView *)viewForZoomingInScrollView:(UIScrollView *)scrollView
{
    return _graphView;
}

- (void)scrollViewDidEndZooming:(UIScrollView *)scrollV withView:(UIView *)view atScale:(CGFloat)scale
{
    [_scrollView setContentSize:CGSizeMake(scale*320, scale*1700)];
}
当我水平滚动时,一切正常,但垂直滚动时,请检查下图:


注意:X和Y轴在视图上,图形在scrollview上,我还想根据缩放更改X和Y坐标,并使其可滚动。任何帮助或建议都将不胜感激。

请参见以下内容:

- (UIView *)viewForZoomingInScrollView:(UIScrollView *)scrollView
{
    CGFloat offsetX = MAX((scrollView.bounds.size.width - scrollView.contentSize.width) * 0.5, 0.0);
    CGFloat offsetY = MAX((scrollView.bounds.size.height - scrollView.contentSize.height) * 0.5, 0.0);

    _drawingView.center = CGPointMake(scrollView.contentSize.width * 0.5 + offsetX,
                                 scrollView.contentSize.height * 0.5 + offsetY);


    return _drawingView;
}