标签: ios-charts

ios-charts设置数据后如何无效/重绘

请参阅底部更新(4/30/2015)

我正在使用ios-charts在Swift for iOS中实现一个饼图,并选择自定义图例.值得注意的是,图表显示在UICollectionView的单元格中.问题是,在第一次显示时,不显示自定义图例内容.相反,我获得了从数据生成的图例内容.

如果我在屏幕外滚动视图,然后将其滚动回屏幕,则会显示正确的自定义图例.所以,我猜我需要在设置自定义图例后强制重绘/重新布局/重新设置.我还没弄明白怎么做. 有没有人有想法?我完全错过了什么吗?谢谢!

初始显示图表 - 数据生成(错误)图例 初始显示图表 - 生成的图例

滚动并返回到屏幕后的图表 - (正确的图例) 带有适当图例的图表

这是我绘制此图表的代码:

func initChart(pieChart: PieChartView) {
    numFormatter.maximumFractionDigits = 0

    pieChart.backgroundColor = UIColor.whiteColor()

    pieChart.usePercentValuesEnabled = false
    pieChart.drawHoleEnabled = true
    pieChart.holeTransparent = true
    pieChart.descriptionText = ""
    pieChart.centerText = "30%\nComplete"

    pieChart.data = getMyData()

    // Setting custom legend info, called AFTER setting data
    pieChart.legend.position = ChartLegend.ChartLegendPosition.LeftOfChartCenter
    pieChart.legend.colors = [clrGreenDk, clrGold, clrBlue]
    pieChart.legend.labels = ["Complete","Enrolled","Future"]
    pieChart.legend.enabled = true
}

func getMyData() -> ChartData {

    var xVals = ["Q201","R202","S203","T204","U205", "V206"]

    var courses: [ChartDataEntry] = …
Run Code Online (Sandbox Code Playgroud)

mpandroidchart ios-charts

6
推荐指数
1
解决办法
6654
查看次数

在水平条形图中隐藏底部x轴?

我想使用不渲染任何x轴或网格线的ios图表渲染(堆叠)水平条形图.我已经禁用了我能找到的每个设置,但是底部的x轴仍然呈现.

func setUpBarChart() {
    // General bar chart settings
    barChart.pinchZoomEnabled = false
    barChart.drawGridBackgroundEnabled = false
    barChart.drawBarShadowEnabled = false
    barChart.drawValueAboveBarEnabled = false
    barChart.drawBordersEnabled = false
    barChart.drawMarkers = false
    barChart.legend.enabled = false
    barChart.descriptionText = ""
    barChart.drawBordersEnabled = false

    // Left-axis settings
    barChart.leftAxis.drawLabelsEnabled = false
    barChart.leftAxis.drawTopYLabelEntryEnabled = false
    barChart.leftAxis.drawAxisLineEnabled = false

    // x-axis settings

    barChart.xAxis.drawAxisLineEnabled = false
    barChart.xAxis.drawGridLinesEnabled = false
    barChart.xAxis.drawLabelsEnabled = false
    barChart.xAxis.enabled = false

    // add some dummy data
    let entry = BarChartDataEntry(values: [10,2,5], xIndex: 0)
    let set = BarChartDataSet(yVals: [entry], …
Run Code Online (Sandbox Code Playgroud)

ios mpandroidchart ios-charts

6
推荐指数
1
解决办法
2787
查看次数

具有ios-charts的特定栏上方文本的属性

如何更改BarChart中特定条形图上方文本的属性(例如字体大小,文本颜色等)?

条形图示例.

在这个例子中,我想要红色的" - $ 5,000.00"并增加条形上方每个文本的字体大小.

这是一些代码:

@IBOutlet weak var barChartView: BarChartView!


// init barChartView --------------------------------------
barChartView.descriptionText = ""

barChartView.legend.enabled = false

// grid lines
barChartView.xAxis.drawAxisLineEnabled = false
barChartView.xAxis.drawGridLinesEnabled = false
barChartView.leftAxis.drawAxisLineEnabled = false
barChartView.leftAxis.drawGridLinesEnabled = false
barChartView.rightAxis.drawAxisLineEnabled = false
barChartView.rightAxis.drawGridLinesEnabled = false

// X-axis line
barChartView.xAxis.drawAxisLineEnabled = true
barChartView.xAxis.axisLineColor = axisGridsAndLabelsColor

// X-axis labels
barChartView.xAxis.labelTextColor = axisGridsAndLabelsColor
barChartView.xAxis.labelPosition = .Bottom

// Y-axis labels
accountsBarChartView.leftAxis.labelTextColor = axisGridsAndLabelsColor
accountsBarChartView.rightAxis.drawLabelsEnabled = false
//---------------------------------------------------------


// bar chart's data
var dataPoints = [String]() …
Run Code Online (Sandbox Code Playgroud)

ios swift ios-charts swift2

6
推荐指数
1
解决办法
5250
查看次数

触摸时显示和隐藏折线图突出显示

我想只在手指在图表上时突出显示数据点,只要它从我想要调用的屏幕上抬起,或者简单地取消选择突出显示.

func chartValueNothingSelected(chartView: ChartViewBase) {
    print("Nothing Selected")
    markerView.hidden = true
}
Run Code Online (Sandbox Code Playgroud)

我试图覆盖触摸结束,但没有让它工作.

ios-charts

6
推荐指数
1
解决办法
3436
查看次数

iOS图表反转X轴方向

我有一个使用Daniel Gindi iOS图表构建的条形图.它代表一段时间内的历史数据.我遇到的问题是数据是从左到右(新数据 - >旧数据)绘制的.我需要将它绘制为从右到左(旧数据 - >新数据).我知道我可以颠倒我输入数据的顺序BarChartData,但后来我的图表问题仍然是左对齐.它需要正确对齐.我在这里讨论了讨论反转x轴的问题以及如何解决它(目前不是框架的一个包含特性),但是我无法弄清楚实际需要做什么.以下是我需要的例子:

这就是我的图表目前的样子:

在此输入图像描述

这就是我需要的样子:

在此输入图像描述

我的问题

有没有办法颠倒x轴?

要么

有没有办法正确对齐图表?

以下是我的一些代码并尝试解决此问题:

class ViewController: UIViewController {

    @IBOutlet weak var barChartView: BarChartView!

    //...

    func plotChart() {

        // Create history data
        //...

        barChartView.data = chartData  // 'chartData' is the BarChartData() containing all of the history information

        // No efect
        barChartView.legend.direction = .RightToLeft

        // Chart breaks
        barChartView.leftAxis.axisMinValue = 30
        barChartView.leftAxis.axisMaxValue = 0

        // Breaks the ability to zoom
        barChartView.setVisibleXRangeMinimum(CGFloat(40))
        barChartView.setVisibleXRangeMaximum(CGFloat(1))

    }

}
Run Code Online (Sandbox Code Playgroud)

charts ios swift ios-charts

6
推荐指数
1
解决办法
1338
查看次数

是否可以在BarChart列上处理点击事件?

我知道MPAndroidChart可以处理图表上的事件.其文档都有详细记录.

然而,我无法找到有关相同事件的任何文档ios-chart.我知道它的创建者告诉我们应该遵循MPAndroidChart他的库的文档,但我无法在Swift 3.0上处理这些事件.

我也找不到任何处理ios-chart库的这些事件的例子.

那么,是否有可能处理ios-chart图书馆的点击事件?

编辑:根据@AdamM我的反馈,我将把数据设置到图表的功能.

func enterData(valuesChart: [BarChartDataEntry]){
    let chartDataSet = BarChartDataSet(values: valuesChart, label: "Total Values")

    let charData = BarChartData(dataSets: [chartDataSet])
    barChartView?.data = charData
    barChartView?.animate(xAxisDuration: 2.0, yAxisDuration: 2.0)
}
Run Code Online (Sandbox Code Playgroud)

提前致谢!

ios swift ios-charts swift3

6
推荐指数
1
解决办法
1222
查看次数

为iOS图表设置最大缩放

我是编程和swift的新手,所以我有一个问题......如何在iOS图表中设置最大缩放?尝试:

 func setBarChart(dataPoints: [String], humidity: [Double], andDays: Int, forTime: String)
{
    let formato = BarChartFormatter()
    let xaxis  = XAxis()
    var humidityEntry: [BarChartDataEntry] = []

    for i in 0..<dataPoints.count
    {
        let dataEntry = BarChartDataEntry(x: Double(i), y: humidity[i])
        humidityEntry.append(dataEntry)
        formato.getNumberOfDays(Double(i), axis: xaxis, andDays: andDays)
    }

    xaxis.valueFormatter = formato
    let barChartDataSet3 = BarChartDataSet(values: humidityEntry, label: "Humidity")
    barChartDataSet3.setColor(UIColor.cyan)
    barChartDataSet3.barBorderColor = UIColor.blue
    barChartDataSet3.valueTextColor = UIColor.lightText

    barChartView.leftAxis.labelTextColor = UIColor.white
    barChartView.rightAxis.labelTextColor = UIColor.white
    barChartView.leftAxis.labelFont = UIFont.systemFont(ofSize: 11)
    barChartView.rightAxis.labelFont = UIFont.systemFont(ofSize: 11)
    barChartView.scaleYEnabled = false
//        barChartView.setVisibleXRange(minXRange: 0.1, …
Run Code Online (Sandbox Code Playgroud)

ios swift ios-charts

6
推荐指数
1
解决办法
2625
查看次数

iOS图表饼图大小

我正在使用带有Swift 3的iOS图表.

我有100 x 100 PieChartView渲染饼图,但它没有填充视图(NSView确切地说是一个).灰色框是视图,饼图和边缘之间有很大的间隙.

在此输入图像描述

我已确认视图为100 x 100:

print(graph.frame) //<-- (25.0, 65.0, 100.0, 100.0)
Run Code Online (Sandbox Code Playgroud)

所以我假设我需要在饼图中配置一些东西,以使其成为视图中的完整大小.这是我到目前为止所尝试的无济于事:

graph.holeRadiusPercent = 0.7
graph.transparentCircleRadiusPercent = 0  
graph.legend.enabled = false
graph.chartDescription?.enabled = false
graph.minOffset = 0
Run Code Online (Sandbox Code Playgroud)

有任何想法吗?

nsview swift ios-charts

6
推荐指数
1
解决办法
4001
查看次数

iOS 图表 - 仅在突出显示时绘制值

我只想在点击 iOS 图表时突出显示和显示价值。我启用了突出显示而不是值,因为我只在点击和突出显示时想要它们

lineChartDataSet.drawValuesEnabled = false
lineChartDataSet.highlightEnabled = true
Run Code Online (Sandbox Code Playgroud)

我需要这个功能吗?

func chartValueSelected(_ chartView: ChartViewBase, entry: ChartDataEntry, highlight: Highlight) {}
Run Code Online (Sandbox Code Playgroud)

charts highlight ios ios-charts

5
推荐指数
1
解决办法
3440
查看次数

如何使用 iOS 图表库在底部轴上创建带有日期/时间的图表?

我目前正在使用iOS Library Charts并且在为x Axis实现TimeLine 时遇到了一些问题。

图书馆链接:https : //github.com/danielgindi/Charts

我有一个对象列表作为图表的输入。

let objectList : [Object] = fillObjectList()

class Object {
    var timeCreated : Date
    var value : Double
}
Run Code Online (Sandbox Code Playgroud)

我已经实现了一个解决方案,我只是将timeCreated.timeIntervalsince1970用作 x 轴的值。但这看起来不是那么好。

所以如果你们有使用iOS Charts Library的经验,希望你们能想出解决这个问题的办法。非常感谢您的帮助!

charts xcode ios swift ios-charts

5
推荐指数
1
解决办法
493
查看次数

标签 统计

ios-charts ×10

ios ×7

swift ×6

charts ×3

mpandroidchart ×2

highlight ×1

nsview ×1

swift2 ×1

swift3 ×1

xcode ×1