之前有一个需求要求写一个柱状图,扒了好多代码没有合适的,就从code4App上找了一个稍微有点相似的Demo进行了一些修改(时间有点久,具体demo地址没有找到),希望对大家有点帮助
简单的调用代码如下:
-(void)creatChart{
JHColumnChart *column = [[JHColumnChart alloc] initWithFrame:CGRectMake(0, 100, [UIScreen mainScreen].bounds.size.width, 300)];
column.backgroundColor = [UIColor redColor];
column.valueArr= @[
@[@10],
@[@20],
@[@8],
@[@50],
@[@22],
@[@34],
@[@9],
@[@22],
@[@34]
];
column.originSize=CGPointMake(30,30);
}
可设置的一些属性:
//峰值
//@property (nonatomic,assign) CGFloat maxHeight1;
//柱状图数组的颜色
@property(nonatomic,strong)NSArray * columnBGcolorsArr;
//y轴的值
@property (nonatomic, strong) NSArray * valueArr;
//整个大柱状图的背景颜色
@property(nonatomic,strong)UIColor * bgVewBackgoundColor;
//列间距,非连续的默认是5
@property (nonatomic, assign) CGFloat typeSpace;
//圆柱宽度
@property (nonatomic, assign) CGFloat columnWidth;
//是否需要x轴y轴
@property (nonatomic, assign) BOOL needXandYLine;
//y轴虚线指导颜色
@property (nonatomic, strong) UIColor * dashColor;
//左下脚距离x,y的起点
@property (nonatomic, assign) CGPoint originSize;
//外面传过来的线的值,转变成在屏幕的位置传过来
@property (nonatomic, strong)NSArray *jingJieXianArr;
//盛放数据数组 跟数据一对一 放到另一个数组里
@property (nonatomic, strong)NSArray *isKongArr;
//画警戒线
column.jingJieXianArr=@[@50,@20];
//设置每个柱的宽度 默认显示8个
column.columnWidth=20;
column.typeSpace=20;
column.bgVewBackgoundColor = [UIColor clearColor];
//开始动画
[columnshowAnimation];
[self.viewaddSubview:column];
下面是demo地址,因为按照需求写完之后从项目中抠出的一部分,所以有点乱,勿喷,哈哈。。。
GitHub - baidi510/MYProject 或者 自定义动态柱状图.zip_免费高速下载|百度网盘-分享无限制