swift - In ios-charts how to set the maximum value for y-axis? -


i using ios-charts display horizontal barchart 1 value this:

 var dataentries: [barchartdataentry] = []         let dataentry = barchartdataentry(value: self.deductible!.deductiblepaid, xindex: 0)         dataentries.append(dataentry)         let chartdataset =    barchartdataset(yvals: dataentries, label: "deductible")         let chartdata = barchartdata( xvals: datapoints, dataset: chartdataset)           self.horizontalbarchart!.data = chartdata         self.horizontalbarchart!.leftaxis.customaxismax = 3000.0         self.horizontalbarchart!.leftaxis.startatzeroenabled = false          chartdataset.colors = chartcolortemplates.vordiplom() 

i have tried set maximum value yaxis not effecting graph. edit: please see screenshot here : http://postimg.org/image/ogoj2t02f/ need bar should show upper limit upto 3000 (or amount specified dynamically) instead of calculated upper limit.

i changed code make it, here have currently:

self.horizontalbarchart!.nodatatext = "you need provide data chart."          self.horizontalbarchart!.setvisibleyrangemaximum(3000, axis: chartyaxis.axisdependency.left)         self.horizontalbarchart!.descriptiontext = ""         var dataentries: [barchartdataentry] = []         let dataentry = barchartdataentry(value: self.deductible!.deductiblepaid, xindex: 0)         dataentries.append(dataentry)         let chartdataset =    barchartdataset(yvals: dataentries, label: " ")         self.horizontalbarchart!.nodatatext = "you need provide data chart."         self.horizontalbarchart!.setviewportoffsets(left: 0, top: 0, right: 0, bottom: 0);         let chartdata = barchartdata( xvals: datapoints, dataset: chartdataset)          self.horizontalbarchart!.autoscaleminmaxenabled = false         self.horizontalbarchart!.data = chartdata         self.horizontalbarchart!.leftaxis.axismaximum = 1600         self.horizontalbarchart!.leftaxis.axisminimum = 00         self.horizontalbarchart!.rightaxis.axismaximum = 1600         //self.horizontalbarchart!.leftaxis.customaxismax = 3000.0         //self.horizontalbarchart!.leftaxis.startatzeroenabled = false          chartdataset.colors = chartcolortemplates.vordiplom()         self.horizontalbarchart!.xaxis.labelposition = .top          self.horizontalbarchart!.backgroundcolor = uicolor(red: 189/255, green: 195/255, blue: 199/255, alpha: 1)         self.horizontalbarchart!.animate(xaxisduration: 2.0, yaxisduration: 2.0) 

please let me know if unclear , need more details. has been more challenging thought be! here appreciated.

second edit: have following code :

 func sethorizontalbarchartdata() {          self.horizontalbarchart!.descriptiontext = ""         var dataentries: [barchartdataentry] = []         let dataentry = barchartdataentry(value: 900, xindex: 0)         dataentries.append(dataentry)         let chartdataset =    barchartdataset(yvals: dataentries, label: " ")         self.horizontalbarchart!.nodatatext = "you need provide data chart."         //self.horizontalbarchart!.setviewportoffsets(left: 0, top: 0, right: 0, bottom: 0);         let deductible = [" "]         let chartdata = barchartdata( xvals: deductible, dataset: chartdataset)         self.horizontalbarchart!.data = chartdata         self.horizontalbarchart!.leftaxis.startatzeroenabled = false         self.horizontalbarchart!.rightaxis.startatzeroenabled = false         self.horizontalbarchart!.rightaxis.customaxismax = 3000         self.horizontalbarchart!.rightaxis.customaxismin = 10         chartdataset.colors = chartcolortemplates.vordiplom()         self.horizontalbarchart!.xaxis.labelposition = .top         self.horizontalbarchart!.backgroundcolor = uicolor(red: 189/255, green: 195/255, blue: 199/255, alpha: 1)         self.horizontalbarchart!.animate(xaxisduration: 2.0, yaxisduration: 2.0)     } 

i still getting same thing : http://postimg.org/image/ogoj2t02f/ need 1 bar values upto 3000 , bar chart coming upto 900. please ?

customaxismax should able you. works fine on side.

what might missing is, setting leftaxis, should know there rightaxis well. not sure using.

if take barlinechartviewbase.swift', there code in

internal override func calcminmax:

_leftaxis.axismaximum = !isnan(_leftaxis.customaxismax) ? _leftaxis.customaxismax : (maxleft + topspaceleft) _rightaxis.axismaximum = !isnan(_rightaxis.customaxismax) ? _rightaxis.customaxismax : (maxright + topspaceright) _leftaxis.axisminimum = !isnan(_leftaxis.customaxismin) ? _leftaxis.customaxismin : (minleft - bottomspaceleft) _rightaxis.axisminimum = !isnan(_rightaxis.customaxismin) ? _rightaxis.customaxismin : (minright - bottomspaceright) 

it reads customaxismax or customaxismin once set it. need double check axis using.

edit second edit:

i change demo code, want?

code in ios-charts demo, try in demo code:

- (void)setdatacount:(int)count range:(double)range {     nsmutablearray *xvals = [[nsmutablearray alloc] init];      [xvals addobject:months[0]];      nsmutablearray *yvals = [[nsmutablearray alloc] init];      [yvals addobject:[[barchartdataentry alloc] initwithvalue:900 xindex:0]];      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.leftaxis.startatzeroenabled = no;     _chartview.rightaxis.startatzeroenabled = no;     _chartview.rightaxis.enabled = no;     _chartview.leftaxis.customaxismax = 3000;     _chartview.leftaxis.customaxismin = 10;      _chartview.data = data; } 

screenshot: enter image description here


Comments