Построение последовательности записей в F# диаграммах
Я только начинаю с F# и испытываю некоторые затруднения с пониманием того, как использовать Последовательность записей с F# Charting.
У меня есть функция (ReturnTemp), которая возвращает последовательность записей типа TempData. TempData определяется типом записи следующим образом
type TempData = {Date: System.DateTime; Year: int64 ; Location: string; Temperature: decimal}
Мне не ясно, как использовать эту последовательность с Chart.Line для построения графика на оси X и температуры на оси Y.
1 ответ
Решение
Вот пример, который отображает линейную диаграмму, используя список записей TempData:
#r """..\packages\FSharp.Charting.0.90.7\lib\net40\FSharp.Charting.dll"""
#load """..\packages\FSharp.Charting.0.90.7\FSharp.Charting.fsx"""
open FSharp.Charting
open System
type TempData = {
Date: System.DateTime
Year: int64
Location: string
Temperature: decimal
}
let data =
[
{Date = DateTime.Today.AddDays -4.; Year = 2014L; Location = "City X"; Temperature = 13M}
{Date = DateTime.Today.AddDays -3.; Year = 2014L; Location = "City X"; Temperature = 16M}
{Date = DateTime.Today.AddDays -2.; Year = 2014L; Location = "City X"; Temperature = 12M}
{Date = DateTime.Today.AddDays -1.; Year = 2014L; Location = "City X"; Temperature = 14M}
{Date = DateTime.Today; Year = 2014L; Location = "City X"; Temperature = 18M}
]
data
|> List.map (fun x -> x.Date, x.Temperature)
|> Chart.Line
Вы также можете использовать FsPlot для создания аналогичного графика с использованием Highcharts или Google Charts.