【问题标题】:How to datePicker indexing realm and drawing chart in swift3如何在swift3中datePicker索引领域和绘制图表
【发布时间】:2017-03-06 05:04:27
【问题描述】:

Swift 3,领域,图表


一个屏幕有一个 DatePicker 和 BarChart

我想要

1) 选择一个日期 2)索引我的领域数据库 3) 绘制条形图

已经有一个领域数据库


为了精确索引,我将日期分隔为 YYYY~mm

class ChartsDatas: Object {
dynamic var date: Date = Date()

let dateYYYYFormat = DateFormatter()
let dateMMFormat = DateFormatter()
let dateddFormat = DateFormatter()
let datehhFormat = DateFormatter()
let datemmFormat = DateFormatter()
dynamic var dateYYYY: String = "2000"
dynamic var dateMM: String = "01"
dynamic var datedd: String = "01"
dynamic var datehh: String = "00"
dynamic var datemm: String = "00"

dynamic var count: Double = Double(0.0)

func dateLongToShort(orgDate:Date!){
    dateYYYYFormat.dateFormat = "YYYY"
    dateYYYY = dateYYYYFormat.string(from: orgDate)

    dateMMFormat.dateFormat = "MM"
    dateMM = dateMMFormat.string(from: orgDate)

    dateddFormat.dateFormat = "dd"
    datedd = dateddFormat.string(from: orgDate)

    datehhFormat.dateFormat = "hh"
    datehh = datehhFormat.string(from: orgDate)

    datemmFormat.dateFormat = "mm"
    datemm = datemmFormat.string(from: orgDate)
}

并绘制(此方法是绘制最新的十个数据)

    var dataEntries: [BarChartDataEntry] = []
    let visitorCounts = getVisitorCountsFromDatabase() //read realm DB here

    var xAxisCount = visitorCounts.count 
    if xAxisCount > 10{
        xAxisCount = visitorCounts.count - 10
    }
    for i in xAxisCount..<visitorCounts.count {
        let timeIntervalForDate: TimeInterval = visitorCounts[i].date.timeIntervalSince1970
        let dataEntry = BarChartDataEntry(x: Double(timeIntervalForDate), y: Double(visitorCounts[i].count))
        dataEntries.append(dataEntry)
    }

如何根据我选择的日期修改为绘制十个数据

谢谢

【问题讨论】:

  • 不是解决方案,但您可以使用单个 DateFormatter 实例,所有功能也正确 Year 格式化程序是 yyyy 而不是 YYYY

标签: ios swift xcode charts realm


【解决方案1】:

我不确定getVisitorCountsFromDatabase() 中发生了什么,但您可以通过指定日期间隔来过滤带有谓词的查询结果,请参阅此处的文档:https://realm.io/docs/swift/latest/#filtering

【讨论】:

  • 解决我的问题!多么方便的图书馆,欣赏
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2021-03-25
  • 2011-02-23
  • 1970-01-01
  • 1970-01-01
  • 2021-08-31
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多