2015-08-30 3 views
2

Как создать горизонтальную гистограмму по ios-chart в xcode? я создал Вид с классом HorizontalBarChartViewГоризонтальная гистограмма по ios-chart

@IBOutlet weak var horChart: HorizontalBarChartView! 

override func viewDidLoad() { 
    super.viewDidLoad() 

    // Do any additional setup after loading the view. 

    let months = ["Jan", "Feb", "Mar", "Apr", "May", "Jun"] 
    let unitsSold = [20.0, 4.0, 6.0, 3.0, 12.0, 16.0] 

    setChart(months, values: unitsSold) 

} 

func setChart(dataPoints: [String], values: [Double]) { 

    var dataEntries: [ChartDataEntry] = [] 

    for i in 0..<dataPoints.count { 
     let dataEntry = ChartDataEntry(value: values[i], xIndex: i) 
     dataEntries.append(dataEntry) 
    } 

    let chartDataSet = BarChartDataSet(yVals: dataEntries, label: "Units Sold") 
    let chartData = BarChartData(xVals: dataPoints, dataSet: chartDataSet) 
    horChart.data = chartData 

} 

Didnt найти примеры в Интернете

ответ

0

Существует exmaples в папке ChartsDemo, и есть много диаграмм вы можете взглянуть. Но я вставить код здесь, она копируется из @interface HorizontalBarChartViewController:

- (void)setDataCount:(int)count range:(double)range 
{ 
    NSMutableArray *xVals = [[NSMutableArray alloc] init]; 

    for (int i = 0; i < count; i++) 
    { 
     [xVals addObject:months[i % 12]]; 
    } 

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

    for (int i = 0; i < count; i++) 
    { 
     double mult = (range + 1); 
     double val = (double) (arc4random_uniform(mult)); 
     [yVals addObject:[[BarChartDataEntry alloc] initWithValue:val xIndex:i]]; 
    } 

    BarChartDataSet *set1 = [[BarChartDataSet alloc] initWithYVals:yVals label:@"DataSet"]; 
    set1.barSpace = 0.35; 

    NSMutableArray *dataSets = [[NSMutableArray alloc] init]; 
    [dataSets addObject:set1]; 

    BarChartData *data = [[BarChartData alloc] initWithXVals:xVals dataSets:dataSets]; 
    [data setValueFont:[UIFont fontWithName:@"HelveticaNeue-Light" size:10.f]]; 

    _chartView.data = data; 
} 
+0

При преобразовании этого кода в Swift было много синтаксической ошибки. – iDevAmit

+0

это ваша проблема .. не код. Сначала вы должны познакомиться с быстрым и Objc. – Wingzero

+0

согласился! но есть такая разница между версиями 3 и 2.3, это шок, и демонстрации не очень помогают, поскольку они относятся к версии 2. Поэтому я потратил много времени на преобразование своего проекта в версию 3. Для нас начинающие/промежуточные программисты - это гора карабкаться. Просто пытаясь изменить цвета ярлыков для valueColors, он стоил мне часов, поскольку он обесценился, и я оставлен черным текстом на сером фоне. – user2986119

5

Проверьте вид horChart в mainStoryboard. класс - это «HorizontalBarChartView», а модуль - «Графики» Та же проблема, с которой я столкнулся, но моя проблема решена с помощью установленного модуля «Диаграммы»

Смежные вопросы