platform:ios,'10.0'

inhibit_all_warnings!

use_frameworks!

target ‘iOS_Charts’ do

pod 'Charts'

#pod 'ChartsRealm'

end

纯OC工程,pod install 报错,尝试新建一个swift类,生成桥接文件,继续执行 pod install即可,报错内容如下:

ChartsRealm does not specify a Swift version and none of the targets (iOS_Charts) integrating it have the SWIFT_VERSION attribute set. Please contact the author or set the SWIFT_VERSION attribute in at least one of the targets that integrate this pod.

RealmSwift does not specify a Swift version and none of the targets (iOS_Charts) integrating it have the SWIFT_VERSION attribute set. Please contact the author or set the SWIFT_VERSION attribute in at least one of the targets that integrate this pod.

Charts系列

本系列文章Charts版本号3.4.0,最新代码移步 demo

BarChartView部分属性代码

#import "GWLBarChartViewController.h"

typedef NS_ENUM(NSInteger, BarChartViewType) {

BarChartViewTypeSingle = 1 << 0,//单柱

BarChartViewTypeGroup = 1 << 1,//分组

BarChartViewTypeStacked = 1 << 2,//堆叠式

};

@interface GWLBarChartViewController ()

/// 默认垂直显示,水平柱状图使用 HorizontalBarChartView

@property (strong, nonatomic) BarChartView *barChartView;

@property (assign, nonatomic) BarChartViewType barChartViewType;

/// 圆柱 数据

@property (strong, nonatomic) NSArray *datas;

/// 圆柱 x轴标题

@property (strong, nonatomic) NSArray *titles;

/// 堆叠式圆柱 单个圆柱各层颜色数组

@property (strong, nonatomic) NSArray *stackColors;

/// 堆叠式圆柱 图例文字数组

@property (strong, nonatomic) NSArray *stackLabels;

///maskView

@property (strong, nonatomic) UIView *maskView;

@end

@implementation GWLBarChartViewController

- (void)viewDidLoad {

[super viewDidLoad];

self.title = @"BarChartView";

self.view.backgroundColor = [UIColor whiteColor];

[self loadData];

// [self loadStackedData];

// [self loadGroupData];

[self setupBarChartView];

}

// 单层数据

- (void)loadData {

self.barChartViewType = BarChartViewTypeSingle;

self.titles = @[@"12",@"2",@"3",@"4",@"5",@"6.000",@"7",@"8",@"9",@"10",@"11",@"12"];

self.datas = @[@"11",@"42",@"23",@"42",@"15",@"46.000",@"30",@"8",@"39",@"19",@"31",@"12"];

}

// stacked数据

- (void)loadStackedData {

self.barChartViewType = BarChartViewTypeStacked;

self.titles = @[@"4", @"6", @"7",@"433333333333333333333",@"4", @"6", @"7",@"4",@"4", @"6", @"7",@"4"];

self.datas = @[@[@"12", @"32", @"23"], @[@"32",@"12",@"23"], @[@"12", @"23",@"32"],@[@"12", @"32", @"23"],@[@"12", @"32", @"23"], @[@"32",@"12",@"23"], @[@"12", @"23",@"32"],@[@"12", @"32", @"23"],@[@"12", @"32", @"23"], @[@"32",@"12", @"23"], @[@"12", @"23",@"32"],@[@"12", @"32", @"23"]];

self.stackLabels = @[@"2", @"5", @"8"];

self.stackColors = @[[UIColor orangeColor], [UIColor grayColor], [UIColor cyanColor]];

}

//分组数据

- (void)loadGroupData {

self.barChartViewType = BarChartViewTypeGroup;

self.datas = @[@[@"99", @"32", @"23", @"35", @"78", @"13"], @[@"12", @"33", @"58", @"03", @"48", @"29"], @[@"08", @"59", @"12", @"32", @"59", @"20"]];

self.titles = @[@"4",@"6", @"7",@"4",@"4", @"5"];

}

#pragma mark - BarChartView

-(void)setupBarChartView {

[self.view addSubview:self.barChartView];

#pragma mark - 配置

//柱状条后面画一个灰色区域,表示最大值。默认NO

self.barChartView.drawBarShadowEnabled = NO;

//显示顶部文字。默认YES

self.barChartView.drawValueAboveBarEnabled = YES;

//在圆柱左右两端各增加一半的条宽。默认NO

self.barChartView.fitBars = NO;

//仅适用于堆叠式(stacked),当为YES时,点击圆柱时即使只选中了一个堆栈条目,也会高亮整条圆柱。默认NO

self.barChartView.highlightFullBarEnabled = NO;

//x轴动画

[self.barChartView animateWithYAxisDuration:1.0f];

//y轴动画

[self.barChartView animateWithXAxisDuration:1.0f];

//空表时显示的文字

self.barChartView.noDataText = @"暂无数据";

//空表时显示的文字大小。默认12

self.barChartView.noDataFont = [UIFont systemFontOfSize:12];

//空表时显示的文字颜色。默认black

self.barChartView.noDataTextColor = [UIColor blackColor];

//空表时显示的文字位置。默认left

self.barChartView.noDataTextAlignment = NSTextAlignmentLeft;

//绘制值的最大项数,大于此值的条目号将导致value-label消失。默认100

self.barChartView.maxVisibleCount = 100;

//y轴自动缩放,默认NO

self.barChartView.autoScaleMinMaxEnabled = NO;

//是否绘制网格背景。默认NO

self.barChartView.drawGridBackgroundEnabled = NO;

//网格背景颜色。默认(red: 240/255.0, green: 240/255.0, blue: 240/255.0, alpha: 1.0)

self.barChartView.gridBackgroundColor = [UIColor colorWithRed:(240/255.0) green:(240/255.0) blue:(240/255.0) alpha:1.0];

//是否绘制图表边框,绘制后就不需要绘制x轴和y轴的轴线了。默认NO

self.barChartView.drawBordersEnabled = NO;

//图表边框颜色。默认black

self.barChartView.borderColor = [UIColor blackColor];

//图表边框宽度。默认1.0

self.barChartView.borderLineWidth = 1.0;

//默认NO

self.barChartView.clipValuesToContentEnabled = NO;

//NO时,则柱状图(x轴线)下方不裁剪突出的显示(图表放大后可看出效果)。默认YES

self.barChartView.clipDataToContentEnabled = YES;

//图表周围的最小偏移量,值越大图表越小。默认为10

self.barChartView.minOffset = 10;

//图表偏移量(上)。默认0

self.barChartView.extraTopOffset = 0;

//图表偏移量(下)。默认0

self.barChartView.extraBottomOffset = 0;

//图表偏移量(左)。默认0

self.barChartView.extraLeftOffset = 0;

//图表偏移量(右)。默认0

self.barChartView.extraRightOffset = 0;

//[self.barChartView setExtraOffsetsWithLeft:0 top:0 right:0 bottom:0];

//默认NO

self.barChartView.keepPositionOnRotation = YES;

//默认YES

self.barChartView.drawMarkers = YES;

ChartMarkerView *makerView = [[ChartMarkerView alloc] init];

makerView.chartView = self.barChartView;

self.barChartView.marker = makerView;

//自定义的maskView

self.maskView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 33, 33)];

self.maskView.backgroundColor = UIColor.redColor;

[makerView addSubview:self.maskView];

ChartDescription *chartDescription = [[ChartDescription alloc] init];

chartDescription.text = @"图表描述文字";

//图表描述文字位置,right时显示在图表网格内右下方,设置为center或者left时则文字更靠右超出右侧网格,不知为何。默认right

chartDescription.textAlign = NSTextAlignmentRight;

chartDescription.font = [UIFont systemFontOfSize:16];

//默认black

chartDescription.textColor = [UIColor orangeColor];

//图表描述信息

self.barChartView.chartDescription = chartDescription;

//是否有图例。默认YES

self.barChartView.legend.enabled = YES;

//图例图形大小。默认8.0

self.barChartView.legend.formSize = 8.0;

//图例文字大小。默认10

self.barChartView.legend.font = [UIFont systemFontOfSize:10];

//图例文字颜色。默认black

self.barChartView.legend.textColor = [UIColor blackColor];

//图例位置。默认left

self.barChartView.legend.horizontalAlignment = ChartLegendHorizontalAlignmentLeft;

//图例排列方向。默认Horizontal

self.barChartView.legend.orientation = ChartLegendOrientationHorizontal;

//多点触控。默认NO

self.barChartView.multipleTouchEnabled = NO;

//平移拖动。默认YES

self.barChartView.dragEnabled = YES;

//x轴缩放,默认YES

self.barChartView.scaleXEnabled = YES;

//y轴缩放 默认YES

self.barChartView.scaleYEnabled = YES;

//图表是否可以x轴滑动(包括放大后)。默认YES

self.barChartView.dragXEnabled = YES;

//图表是否可以y轴滑动(包括放大后)。默认YES

self.barChartView.dragYEnabled = YES;

//触控放大,默认NO

self.barChartView.pinchZoomEnabled = NO;

//双击放大图表,默认YES

self.barChartView.doubleTapToZoomEnabled = YES;

//拖动后图表是否继续滚动,默认YES。

self.barChartView.dragDecelerationEnabled = YES;

//减速摩擦系数,间隔0-1,如果将其设置为0,它将立即停止,1是无效值,并将自动转换为0.9999。默认0.9

self.barChartView.dragDecelerationFrictionCoef = 0.9;

//当图表完全缩小的时候,每一次拖动都会高亮显示在图标视图上。默认YES

self.barChartView.highlightPerDragEnabled = YES;

//设置最大高亮距离(dp)。在图表中的点击位置距离条目的距离超过此距离不会触发高亮显示。默认500

self.barChartView.maxHighlightDistance = 500;

//设置为NO,禁止点击手势高亮显示值,值仍然可以通过拖动或编程方式突出显示。默认YES

self.barChartView.highlightPerTapEnabled = YES;

#pragma mark - xAxis x轴

ChartXAxis *xAxis = self.barChartView.xAxis;

// !!!: ComponentBase 属性

//是否显示x轴。默认YES

xAxis.enabled = YES;

//默认5.0

xAxis.xOffset = 5.0;

//偏移量。改变值时文字位置不变,图表整体上移或下移距离的大小。默认5.0

xAxis.yOffset = 5.0;

// !!!: AxisBase 属性

//绘制x轴的标签。默认YES

xAxis.drawLabelsEnabled = YES;

//标签文字大小。默认10

xAxis.labelFont = [UIFont systemFontOfSize:10];

//标签文字颜色。默认black

xAxis.labelTextColor = [UIColor blackColor];

//将轴标签居中,而不是将它们画在原来的位置。默认NO

xAxis.centerAxisLabelsEnabled = NO;

//显示x轴的轴线。默认YES

xAxis.drawAxisLineEnabled = YES;

//轴线的颜色。默认gray

xAxis.axisLineColor = [UIColor grayColor];

//轴线的宽度。默认0.5

xAxis.axisLineWidth = 0.5;

//默认0

xAxis.axisLineDashPhase = 0;

//轴线的虚线效果

xAxis.axisLineDashLengths = @[];

//显示网格线。默认YES

xAxis.drawGridLinesEnabled = YES;

//网格线的颜色

xAxis.gridColor = [UIColor grayColor];

//网格线的宽度。默认0.5

xAxis.gridLineWidth = 0.5;

xAxis.gridLineDashPhase = 0;

//网格线的虚线效果,间距值

xAxis.gridLineDashLengths = @[];

//默认NO

xAxis.granularityEnabled = NO;

//granularityEnabled = YES时,设置x轴标签显示,例如:设置3则每隔两个柱子显示一个标签。默认1

xAxis.granularity = 1;

//x轴显示数量,全部显示,不滑动。若设置setVisibleXRangeMaximum则labelCount设置无效

xAxis.labelCount = self.titles.count;

//标签格式化,设置后则titles显示换成0开始的序列号

NSNumberFormatter *setFormatter = [[NSNumberFormatter alloc] init];

setFormatter.positivePrefix = @"第";

setFormatter.positiveSuffix = @"个";

//xAxis.valueFormatter = [[ChartDefaultAxisValueFormatter alloc] initWithFormatter:setFormatter];

//小数位

xAxis.decimals = 0;

//不强制绘制指定数量的label。默认NO

xAxis.forceLabelsEnabled = NO;

//默认0.0

xAxis.axisRange = 0;

//开启抗锯齿。默认YES

xAxis.gridAntialiasEnabled = YES;

//默认butt

xAxis.gridLineCap = kCGLineCapButt;

//设置自定义最大值,如果设置则根据提供的数据将不会自动计算该值

//xAxis.axisMaximum = 0;

//撤销axisMaximum设置的最大值

//[xAxis resetCustomAxisMax];

//设置为0时则柱状图从最左端开始显示

//xAxis.axisMinimum = 0.0;

//第一条数据距最左端距离,相当于偏移几个单位量。默认0.5

xAxis.spaceMin = 0.5;

//最后一条数据距最右端距离,相当于偏移几个单位量。默认0.5

xAxis.spaceMax = 0.5;

// !!!: XAxis 属性

//默认1.0

xAxis.labelWidth = 1.0;

//默认1.0

xAxis.labelHeight = 1.0;

//x轴标签文字倾斜度(图表会上移)。默认0.0

xAxis.labelRotationAngle = 0.0;

//默认1.0

xAxis.labelRotatedHeight = 1.0;

//默认1.0

xAxis.labelRotatedWidth = 1.0;

//x轴第一个和最后一个标签条目超过图表边缘时剪切。默认NO

xAxis.avoidFirstLastClippingEnabled = NO;

//x轴文字位置。默认top

xAxis.labelPosition = XAxisLabelPositionBottom;

//x轴标签文字换行。默认NO

xAxis.wordWrapEnabled = YES;

//wordWrapEnabled == YES时,x轴标签显示宽度的百分比。默认1.0

xAxis.wordWrapWidthPercent = 1.0;

//添加限制线

ChartLimitLine *xLimitLine = [[ChartLimitLine alloc] initWithLimit:2 label:@"x轴限制线"];

//添加到Y轴上

[xAxis addLimitLine:xLimitLine];

//限制线。默认NO

xAxis.drawLimitLinesBehindDataEnabled = YES;

#pragma mark - leftAxis y轴

ChartYAxis *leftAxis = self.barChartView.leftAxis;

// !!!: ComponentBase

//是否显示x轴。默认YES

leftAxis.enabled = YES;

//偏移量。改变值时图表位置不变,y轴标签文字右移距离的大小。默认5.0

leftAxis.xOffset = 5.0;

//默认0.0

leftAxis.yOffset = 0.0;

// !!!: AxisBase (参见 XAxis -> AxisBase)

//y轴最大值

//leftAxis.axisMaximum = 100;

//y值最小值,不设置此值在stacked时,圆柱悬空(不从x轴线开始)

leftAxis.axisMinimum = 0;

// !!!: YAxis 属性

//显示y轴底部标签项,默认YES

leftAxis.drawBottomYLabelEntryEnabled = YES;

//显示y轴顶部标签项,默认YES

leftAxis.drawTopYLabelEntryEnabled = YES;

//柱状图是否倒置,默认NO

leftAxis.inverted = NO;

//是否显示y轴零线。默认NO

leftAxis.drawZeroLineEnabled = NO;

//y轴零线颜色。默认gray

leftAxis.zeroLineColor = [UIColor grayColor];

//y轴零线宽度。默认1.0

leftAxis.zeroLineWidth = 1.0;

//默认0.0

leftAxis.zeroLineDashPhase = 0.0;

//y轴零线虚线效果

leftAxis.zeroLineDashLengths = @[];

//最大值到顶部所占整个轴的百分比,默认0.1

leftAxis.spaceTop = 0.1;

//默认0.1

leftAxis.spaceBottom = 0.1;

//y轴标签的显示位置。默认outsideChart

leftAxis.labelPosition = YAxisLabelPositionOutsideChart;

//y轴文字的对齐方式。默认left

leftAxis.labelAlignment = NSTextAlignmentLeft;

//y轴标签的水平偏移量。默认10.0

leftAxis.labelXOffset = 10.0;

//y轴最小宽度。默认0.0

leftAxis.minWidth = 0.0;

//y轴最大宽度

leftAxis.maxWidth = 50.0;

//添加限制线

ChartLimitLine *yLimitLine = [[ChartLimitLine alloc] initWithLimit:35 label:@"y轴限制线"];

yLimitLine.lineWidth = 2;

yLimitLine.lineColor = [UIColor greenColor];

//虚线样式

yLimitLine.lineDashLengths = @[@5.0f, @5.0f];

//位置

yLimitLine.labelPosition = ChartLimitLabelPositionTopRight;

//添加到Y轴上

[leftAxis addLimitLine:yLimitLine];

//限制线。默认NO

leftAxis.drawLimitLinesBehindDataEnabled = YES;

#pragma mark - rightAxis y轴(参考leftAxis)

//隐藏右侧显示,默认YES

self.barChartView.rightAxis.enabled = NO;

switch (self.barChartViewType) {

case BarChartViewTypeSingle:

[self drawData];

break;

case BarChartViewTypeGroup:

[self drawGroupData];

break;

case BarChartViewTypeStacked:

[self drawStackedData];

break;

default:

break;

}

}

#pragma mark - GroupData

- (void)drawGroupData {

double dataSetMax = 0;

float groupSpace = 0.4;

float barSpace = 0.03;

//柱子宽度((barSpace + barWidth) * 系列数 + groupSpace = 1.00 -> interval per "group")

float barWidth = 0.17;

NSMutableArray *dataSets = [NSMutableArray array];

for (int i = 0; i < self.datas.count; i++) {

NSMutableArray *yVals = [NSMutableArray array];

BarChartDataSet *set = nil;

NSArray *array = self.datas[i];

for (int j = 0; j < array.count; j++) {

double val = [array[j] doubleValue];

dataSetMax = MAX(val, dataSetMax);

[yVals addObject:[[BarChartDataEntry alloc] initWithX:j y:val]];

set = [[BarChartDataSet alloc] initWithEntries:yVals label:[NSString stringWithFormat:@"第%d个图例",i]];

[set setColor:[UIColor colorWithRed:arc4random()%256/255.0 green:arc4random()%256/255.0 blue:arc4random()%256/255.0 alpha:1]];

set.valueColors = @[UIColor.blackColor];

}

[dataSets addObject:set];

}

dataSetMax = (dataSetMax + dataSetMax * 0.1);

self.barChartView.leftAxis.axisMaximum = dataSetMax;

self.barChartView.leftAxis.axisMinimum = 0;

BarChartData *data = [[BarChartData alloc] initWithDataSets:dataSets];

data.barWidth = barWidth;

[data groupBarsFromX:-0.5 groupSpace:groupSpace barSpace:barSpace];

self.barChartView.data = data;

[self.barChartView setVisibleXRangeMaximum:2];

}

#pragma mark - StackedData

- (void)drawStackedData {

NSMutableArray *entries = [NSMutableArray array];

for (int i = 0; i < self.datas.count; i++) {

int total = 0;

NSArray *datas = self.datas[i];

for (int i = 0; i < datas.count; i ++) {

NSString *str = datas[i];

total += [str integerValue];

}

CGFloat num = 0;

NSMutableArray *yValues = [NSMutableArray array];

for (int i = 0; i < datas.count; i ++) {

NSString *str = datas[i];

num = [str integerValue] * 100 / (CGFloat)total;

[yValues addObject:[NSNumber numberWithFloat:num]];

}

BarChartDataEntry *entry = [[BarChartDataEntry alloc] initWithX:i yValues:yValues];

[entries addObject:entry];

}

BarChartDataSet *set = [[BarChartDataSet alloc] initWithEntries:entries label:@"图例"];

set.stackLabels = self.stackLabels;

if (self.stackColors.count > 0) {

set.colors = self.stackColors;

} else {

NSMutableArray *colors = [[NSMutableArray alloc] init];

[colors addObjectsFromArray:ChartColorTemplates.vordiplom];

set.colors = colors;

}

BarChartData *data = [[BarChartData alloc] initWithDataSet:set];

self.barChartView.data = data;

}

#pragma mark - data

- (void)drawData {

NSMutableArray *entries = [NSMutableArray array];

for (int i = 0; i < self.datas.count; i++) {

BarChartDataEntry *entry = [[BarChartDataEntry alloc] initWithX:i y:[self.datas[i] integerValue]];

[entries addObject:entry];

}

BarChartDataSet *set = [[BarChartDataSet alloc] initWithEntries:entries label:@"图例"];

//圆柱颜色

[set setColor:[UIColor cyanColor]];

NSNumberFormatter *setFormatter = [[NSNumberFormatter alloc] init];

setFormatter.positiveSuffix = @"%";

[set setValueFormatter:[[ChartDefaultValueFormatter alloc] initWithFormatter:setFormatter]];

//单个高亮显示

set.highlightEnabled = YES;

//单个高亮显示颜色

set.highlightColor = [UIColor purpleColor];

//高亮颜色透明度。

set.highlightAlpha = (120.0 / 255.0);

//圆柱边宽。默认0.0

set.barBorderWidth = 0.0;

//圆柱边色。默认black

set.barBorderColor = [UIColor blackColor];

//圆柱阴影色。(red: 215.0/255.0, green: 215.0/255.0, blue: 215.0/255.0, alpha: 1.0)

set.barShadowColor = [UIColor colorWithRed:(215.0/255.0) green:(215.0/255.0) blue:(215.0/255.0) alpha:1.0];

//圆柱上是否显示文字

set.drawValuesEnabled = YES;

BarChartData *data = [[BarChartData alloc] initWithDataSet:set];

//显示柱状图顶部文字。默认YES

[data setDrawValues:YES];

[data setValueFormatter:[[ChartDefaultValueFormatter alloc] initWithFormatter:[[NSNumberFormatter alloc] init]]];

[data setValueTextColor:UIColor.blackColor];

//柱状图顶部文字大小

[data setValueFont:[UIFont systemFontOfSize:10]];

//圆柱和间距的比例,默认0.85

[data setBarWidth:0.85];

self.barChartView.data = data;

//设置左右滑动。

[self.barChartView setVisibleXRangeMaximum:8];

}

#pragma mark - IChartAxisValueFormatter

- (NSString *)stringForValue:(double)value axis:(ChartAxisBase *)axis {

return self.titles[(int)value];

}

#pragma mark ChartViewDelegate

// 点击

-(void)chartValueSelected:(ChartViewBase *)chartView entry:(ChartDataEntry *)entry highlight:(ChartHighlight *)highlight {

NSLog(@"点击了 %f - %f", entry.x, entry.y);

}

// 停止在图表上的值之间移动

- (void)chartViewDidEndPanning:(ChartViewBase *)chartView {

}

// 没有选择任何内容或取消选择

- (void)chartValueNothingSelected:(ChartViewBase *)chartView {

}

// 缩放图表

- (void)chartScaled:(ChartViewBase *)chartView scaleX:(CGFloat)scaleX scaleY:(CGFloat)scaleY {

}

// 拖动手势移动/转换图表

- (void)chartTranslated:(ChartViewBase *)chartView dX:(CGFloat)dX dY:(CGFloat)dY {

}

// 停止动画

- (void)chartView:(ChartViewBase *)chartView animatorDidStop:(ChartAnimator *)animator {

}

#pragma mark - lazy

- (BarChartView *)barChartView {

if (!_barChartView) {

_barChartView = [[BarChartView alloc] initWithFrame:CGRectMake(0, NAV_HEIGHT, SCREEN_WIDTH, SCREEN_HEIGHT - NAV_HEIGHT - TABBAR_BOTTOM_HEIGHT)];

_barChartView.delegate = self;

_barChartView.xAxis.valueFormatter = self;

}

return _barChartView;

}

@end

效果图

文章最后一次更新于2020-01-08

cahrt框架 ios_iOS - Charts(一) - BarChartView相关推荐

  1. cahrt框架 ios_iOS Charts框架集成及使用

    - (LineChartDataSet *)drawLineWithArr:(NSArray *)arr title:(NSString *)title color:(UIColor *)color ...

  2. cahrt框架 ios_iOS使用Charts框架绘制—折线图

    首先先看一下效果: 折线图 一. 初始化折线图对象 创建一个折线图的用到的类是LineChartView.h, 代码如下: self.LineChartView = [[LineChartView a ...

  3. iOS 图表工具charts之BarChartView

    关于charts的系列视图介绍传送门: iOS 图表工具charts介绍 iOS 图表工具charts之LineChartView iOS 图表工具charts之BarChartView iOS 图表 ...

  4. 一个流畅的iOS图表框架PNChart

    首先祭出此控件的网站https://github.com/kevinzhow/PNChart; 最近公司的项目中有使用到原生的柱状图,然而自己封装的图在大量数据面前竟然怂了,一划一卡,如此的不流畅,对 ...

  5. iOS 图表工具charts之LineChartView

    关于charts的系列视图介绍传送门: iOS 图表工具charts介绍 iOS 图表工具charts之LineChartView iOS 图表工具charts之BarChartView iOS 图表 ...

  6. 全面的Swift学习资料整理

    资料1 ---教程类 官方文档中文翻译http://wiki.jikexueyuan.com/project/swift/Github上的地址点我 Using Swift with Cocoa and ...

  7. 谈一谈App的架构设计

    如何在软件开发的道路上更进一步? 我们可能已经在研发的这条道路上持续了5年,甚至更久的时间,如何才能拉开和大众的距离,让自己的工作能力提升一步?架构设计应该是其中一个方向,大到app整个的设计,小到每 ...

  8. charts框架 横向 纵向柱状图

    实现效果如下,除了基础的柱状图实现,主要增加了,x ,y 轴的自定义title,可以显示汉字而不是数值.最近一直做charts的集成,所以把心得给大家介绍一下.避免走弯路.由于网上IOS相关的demo ...

  9. iOS 使用Charts框架 折线,柱状,K线,饼状,雷达全攻略

    我是前言: 大约几个月前我写了一篇文章, 文中简单地介绍了Charts两种图表的样式的使用, 不过有种意犹未尽的感觉, 利用周末的空闲时间再次看了看, 有了新的收获, 今天发出来,分享给大家, 来稍加 ...

最新文章

  1. PS怎么将自己的形状存储为自定形状?
  2. 真人语音朗读软件_才知道,手机还自带文字转语音功能,一键按下便可实现,网友:赞...
  3. python遇到Retry(total=4, connect=None, read=None, redirect=None, status=None)解决方案
  4. c# 字符串编码问题
  5. html左侧树形图,Qunee for HTML5 - 中文 : 树形布局
  6. yaml数组解析_YAML语法介绍
  7. wordpress连接mysql数据库_wordpress远程连接mysql数据库方法
  8. linux上网络配置不生效的怪异现象处理
  9. 解题报告:HDU_4093 Xavier is Learning to Count FFT
  10. F28335的DSP中主频的配置
  11. SHH could not initialize proxy - the owning Session was closed 和延迟加载问题
  12. 在python中输入圆的半_python半圆
  13. Service(LoadBalancer)
  14. 西安邮电大学计算机学院军训,高考状元染网瘾无法自拔 5次考上大学3次退学
  15. 快速制作一个chrome插件
  16. Ajax异步请求方法(详细)
  17. 房企猪企扎堆转型做光伏,那什么是光伏?
  18. originPro2021(8)在图中加直线方便查看数据
  19. pygame 中的图形绘制函数、帧速率和文字相关知识,简单的的不得了
  20. GitHub上买房攻略开源,一夜之间涨星近千,网友说:正好需要!

热门文章

  1. ASP.NET Core和Angular 2双剑合璧
  2. Linux Basics command
  3. 网络(8)-HTTP、Socket、TCP、UDP的区别和联系
  4. 【File操作】Java实现导出ZIP压缩包
  5. 调焦后焦实现不同距离成像_红外成像光学系统进展与展望
  6. 天津理工大学计算机工程学院院长,王法玉
  7. ABAP,Java, nodejs和go语言的web server编程 1
  8. shell:判断某个变量是否包含字符串/变量的方法
  9. RGB转灰度图的几种算法
  10. 实践详细篇-Windows下使用VS2015编译的Caffe训练mnist数据集