iOS 图表工具charts之LineChartView

LineChartView在charts中可以用来绘制折线,由于charts是基于swift开发的如果,需要和objective-C混编(通过pod的方式没关系),可以参考我的上几篇文章《iOS OC中桥接swift第三方库》

技术图片

lineChartView的一些属性介绍:
? LineChartView *chartView = [[LineChartView alloc] init];
? //设置间隙
? [chartView setExtraOffsetsWithLeft:10 top:10 right:10 bottom:10];
? //设置边框
? chartView.borderColor = [UIColor blueColor];
? chartView.borderLineWidth = .5;
? chartView.drawBordersEnabled = YES;

? //绘制网格背景
? chartView.drawGridBackgroundEnabled = NO;
? chartView.gridBackgroundColor = [UIColor grayColor];

? //关于图表的描述
? chartView.chartDescription.enabled = NO;
? chartView.chartDescription.text = @"tiny`s charts demo";

? //是否显示图例
? chartView.legend.enabled = NO;

? //没有数据时显示
? chartView.noDataText = @"没有数据";

? //x y轴是否支持拖拽
? chartView.scaleXEnabled = YES;
? chartView.scaleYEnabled = NO;

? //是否支持xy轴同时缩放
? chartView.pinchZoomEnabled = NO;

? //是否支持双击缩放
? chartView.doubleTapToZoomEnabled = NO;

? //高亮点击
? chartView.highlightPerTapEnabled = YES;

? //高亮拖拽
? chartView.highlightPerDragEnabled = YES;

? //自动缩放
? chartView.autoScaleMinMaxEnabled = YES;

? //启用拖拽
? chartView.dragEnabled = YES;

? //代理方法
? chartView.delegate = self;

? //是否支持marker功能 这里可以自定义一个点击弹窗的marker
? chartView.drawMarkers = YES;
? ChartMarkerView * makerView = [[ChartMarkerView alloc]init];
? makerView.chartView = chartView;
? chartView.marker = makerView;

lineChartView可以设置坐标轴的属性 leftAxis,rightAxis,xAxis

? ChartYAxis *leftAxis = chartView.leftAxis;
? //是否使能left坐标轴
? leftAxis.enabled = YES;
? //坐标值在外部还是内部
? leftAxis.labelPosition = YAxisLabelPositionInsideChart;
? //最多显示的点数 默认为6
? leftAxis.labelCount = 5;
? //小数位
? leftAxis.decimals = 2;
? //是否要画网格线
? leftAxis.drawGridLinesEnabled = YES;
? //虚线相位
? leftAxis.gridLineDashLengths = @[@2,@5];
? //是否显示顶部底部坐标值
? leftAxis.drawTopYLabelEntryEnabled = YES;
? leftAxis.drawBottomYLabelEntryEnabled = YES;
? //虚线宽度
// leftAxis.gridLineWidth = 20;
? //设置重复不显示
? leftAxis.granularityEnabled = YES;
? leftAxis.granularity = YES;

? //强制显示指定个数 使能了这个属性
// leftAxis.forceLabelsEnabled = YES;
? //抗锯齿功能是否打开 默认打开状态
? leftAxis.gridAntialiasEnabled = NO;
? //坐标点居中
? leftAxis.centerAxisLabelsEnabled = NO;
//绘制零线
// leftAxis.drawZeroLineEnabled = YES;
// leftAxis.zeroLineColor = [UIColor blueColor];

? //轴线颜色 字体 线宽
? leftAxis.axisLineColor = [UIColor redColor];
? leftAxis.labelFont = [UIFont systemFontOfSize:10];
? leftAxis.labelTextColor = [UIColor redColor];
? leftAxis.axisLineWidth = 5;

?

// leftAxis.yOffset = -5;

? leftAxis.valueFormatter = [LeftAxisFormatter new];

相关文章