HXCharts:简洁美观的iOS绘图库

demo地址: https://github.com/xuuhan

HXCharts

HXCharts包括了仪表盘、柱状图、圆形图、折线图等四种绘图。

仪表盘、柱状图、圆形图支持渐变色或单色,折线图只支持单色

柱状图支持水平和竖直两种方向。

仪表盘、柱状图、折线图可以自定义标注值的数量。

下面是在项目中使用HXCharts的实际效果:

xx.gif

语言

  • Objective-C

安装

  • 下载demo,将HXcharts文件夹拖入到自己项目中

使用

xx1.gif
  • 导入头文件
#import "HXCharts.h"

仪表盘

  • 用初始化方法并传入最大值与实际值
  • 传入颜色
  • 传入要显示标注值的数量
        HXGaugeChart *gauge = [[HXGaugeChart alloc] initWithFrame:CGRectMake(x, y, chartWidth, chartWidth) withMaxValue:300 value:225];
        
        gauge.valueTitle = @"225";
        gauge.colorArray = @[[self colorWithHexString:@"#33d24e" alpha:1],
                             [self colorWithHexString:@"#f8e71c" alpha:1],
                             [self colorWithHexString:@"#ff9500" alpha:1],
                             [self colorWithHexString:@"#ff4e65" alpha:1]];
        gauge.locations = @[@0.15,@0.4,@0.65,@0.8];
        gauge.markLabelCount = 5;
        
        [self.view addSubview:gauge];

圆形图

  • 用初始化方法并传入最大值与实际值
  • 传入颜色
        HXCircleChart *circle = [[HXCircleChart alloc] initWithFrame:CGRectMake(x, y, chartWidth, chartWidth) withMaxValue:100 value:85];
         
        circle.valueTitle = @"85%";
        
        circle.colorArray = @[[self colorWithHexString:@"#00fec7" alpha:1],[self colorWithHexString:@"#00d8fe" alpha:1]];
        
        circle.locations = @[@0.15,@0.85];
        
        [self.view addSubview:circle];

柱状图

  • 用初始化方法传入标注值的个数与绘图方向
  • 传入文字数组
  • 传入对应值数组
  • 传入柱子颜色数组与背景线颜色(默认灰色)
  • 要修改柱子的宽度需要去.m文件中修改_margin(柱子间间距)的值
        HXBarChart *bar = [[HXBarChart alloc] initWithFrame:CGRectMake(barChartX, barChartY, barChartWidth, barChartHeight) withMarkLabelCount:6 withOrientationType:OrientationHorizontal];
        
        bar.titleArray = @[@"一月",@"二月",@"三月",@"四月",@"五月",@"六月"];
        
        bar.valueArray = @[@"34",@"72",@"260",@"44",@"180",@"53"];
        
        bar.colorArray = @[color1,color2,color3,color4,color5,color6];
        
        bar.locations = @[@0.15,@.85];
        
        bar.backgroundLineColor = [self colorWithHexString:@"#4b4e52" alpha:1];
        
        [self.view addSubview:bar];

折线图

  • 初始化
  • 传入文字数组
  • 传入对应值数组
  • 传入画线颜色、填充颜色与背景线颜色(默认灰色)
HXLineChart *line = [[HXLineChart alloc] initWithFrame:CGRectMake(lineChartX, lineChartY, lineChartWidth, lineChartHeight)];
        
        [line setTitleArray:@[@"星期一",@"星期二",@"星期三",@"星期四",@"星期五",@"星期六",@"星期日"]];
        
        [line setValue:@[@11,@44,@193,@57,@66,@144,@156] withYLineCount:6];
        
        line.lineColor = [self colorWithHexString:@"#43befa" alpha:1];
        
        line.fillColor = [self colorWithHexString:@"#2e3f53" alpha:0.5];
        
        line.backgroundLineColor = [self colorWithHexString:@"#4b4e52" alpha:1];
        
        [self.view addSubview:line];

说明

demo中颜色使用的是渐变色,也可以选择单色,更多属性请去.h文件里看

demo中内附16进制颜色转三原色方法

有任何建议欢迎留言 一起讨论

下面一篇文章介绍了更详细的用法 : http://www.jianshu.com/p/e478636d7718

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 12,305评论 4 61
  • 一面是兔子发光,一面是彩虹镶上宝石,整体小猪造型,再画上Tommy喜欢的颜色,这真是我见过最漂亮、最个性的存钱罐了...
    顾盼生辉阅读 574评论 0 1
  • 你走走停停频频回头只为听他一句别走
    北七海阅读 139评论 0 1
  • 1点了,居然睡不着。是的姐不知道怎么搞的又特么的单身了。脑子里浑浑噩噩都不知道在想些什么,虽然有工作可供麻痹神经但...
    小肉丸子阅读 490评论 9 9
  • 春天来了,诗人都说它的脚步像少女般轻盈,实则是它的温度让人穿衣太少——我想诗人说谎太多。对于一个地道的南方人来说,...
    劫不得阅读 584评论 2 3