2016.05.15 iOS開發(fā)筆記之RadarChart(雷達(dá)圖)
- 這也我們產(chǎn)品提的一個(gè)較為奇葩的需求, 一開始接到,幾乎是抓狂的,為啥會(huì)提出這種需求...讓人想不通...

111111.png
畢竟比較新鮮,也想去嘗試下,所以硬著頭皮接下了...
就目前而言,我只發(fā)現(xiàn)2個(gè)第三方類庫有實(shí)現(xiàn)這種雷達(dá)圖的,一個(gè)是JYRadarChart(專門搞雷達(dá)圖的),另一個(gè)是Charts(各類圖表)...
這里我使用的是JYRadarChart,介紹一下使用方法:
以下是Demo代碼:
#import "ViewController.h"
#import "JYRadarChart.h"
@interface ViewController ()
{
JYRadarChart *p1;
}
@end
@implementation ViewController
- (void)viewDidLoad {
[super viewDidLoad];
p1 =[[JYRadarChart alloc]initWithFrame:CGRectMake(0, 20, 375, 375)];
//得分
NSArray *arr1 = @[@(90),@(80),@(72),@(80),@(75),@(76),@(80),@(85),@(83),@(88),@(90),@(86)];
//滿分是多少分(100分) 標(biāo)準(zhǔn)分
NSArray *arr2 =@[@(100),@(100),@(100),@(100),@(100),@(100),@(100),@(100),@(100),@(100),@(100),@(100)];
//設(shè)置數(shù)據(jù)列 兩個(gè)數(shù)組的位置可以互換,也可以有多個(gè)蜘蛛網(wǎng),多個(gè)評(píng)分或者評(píng)分標(biāo)準(zhǔn),但至少保證一個(gè)為標(biāo)準(zhǔn),而另一個(gè)或者其他,以此為參照作比較 它們之間的差值就是蜘蛛網(wǎng)之間的間距...
p1.dataSeries=@[arr1,arr2];
//表中圓圈個(gè)數(shù)
p1.steps=2;
//背景色
p1.backgroundColor=[UIColor whiteColor];
/**
你可以自己設(shè)置半徑的最大值和最小值,但是如果你r值不填,
minvalue(默認(rèn)為0),maxvalue(默認(rèn)為100)都保持默認(rèn)也沒有問
題,值如果太大,將會(huì)不在圖表的范圍內(nèi),因此將看不到
*/
p1.r=100;
p1.minValue=0;
p1.maxValue=100;
//你可以選擇是否填充區(qū)域,還是只畫線條
p1.fillArea=YES;
//可以指定透明度, 默認(rèn)是1.0 (不透明)
p1.colorOpacity=0.7;
//說明性的文字 百分比啊 占比重什么的... 和前面的數(shù)組相關(guān)聯(lián)
p1.attributes=@[@"90分",@"80分",@"72分",@"80分",@"75分",@"76分",@"80分",@"85分",@"83分",@"88分",@"90分",@"86分"];
//
//如果你不需要圖例的話,可以讓它不顯示
p1.showLegend=YES;
//由里到外 蜘蛛網(wǎng)所表示的內(nèi)容標(biāo)題 /標(biāo)識(shí)
[p1 setTitles:@[@"評(píng)分",@"總分"]];
//蜘蛛網(wǎng)由里到外的顏色
[p1 setColors:@[[UIColor orangeColor],[UIColor colorWithRed:1.0 green:0.3248 blue:0.8158 alpha:1.0]]];
[self.view addSubview:p1];
}
@end
簡(jiǎn)單實(shí)現(xiàn)之后,效果圖:

222222.png