[英]iOS Charts centering x- and y-axis
为了绘制图形,我使用了这个站点https://github.com/danielgindi/Charts 中的 Charts 框架。 我想知道是否可以将 x 轴和 y 轴居中,如下所示:
我试图将 x 轴和左轴移动到中心,但它只移动标签值而不是轴,如下图所示
这是我的代码示例:
var lineChartView: LineChartView!
override func viewDidLoad() {
super.viewDidLoad()
self.view.backgroundColor = .white
lineChartView = LineChartView(frame: CGRect(x: 0, y: 0, width: self.view.frame.width, height: self.view.frame.height))
lineChartView?.delegate = self
self.view.addSubview(lineChartView!)
let ys1 = Array(0..<100).map { x in ChartDataEntry(x: Double(x) / 10, y: sin(Double(x) / 10)) }
let ys2 = Array(0..<100).map { x in ChartDataEntry(x: Double(x) / 10, y: cos(Double(x) / 10)) }
let data = LineChartData()
let ds1 = LineChartDataSet(entries: ys1, label: "sine")
ds1.colors = [NSUIColor.red]
ds1.drawCirclesEnabled = false
ds1.drawValuesEnabled = false
ds1.mode = .cubicBezier
data.addDataSet(ds1)
let ds2 = LineChartDataSet(entries: ys2, label: "cosine")
ds2.colors = [NSUIColor.blue]
ds2.drawCirclesEnabled = false
ds2.drawValuesEnabled = false
ds2.mode = .cubicBezier
data.addDataSet(ds2)
self.lineChartView.data = data
lineChartView.xAxis.enabled = true
lineChartView.xAxis.labelPosition = .bottom
lineChartView.xAxis.yOffset = -self.view.frame.height/2
lineChartView.rightAxis.enabled = false
// left axis
lineChartView.leftAxis.xOffset = -self.view.frame.width/2
}
你可以试试这个代码,你可能也需要设置 chart.setVisibleRange
chart.xAxis.granularity = 1
chart.leftAxis.granularity = 1
chart.leftAxis.axisMaximum = maxYValue
chart.xAxis.axisMaximum = maxXValue
chart.xAxis.axisMinimum = -maxXValue
chart.leftAxis.axisMinimum = -maxYValue
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.