Как мне построить ряд данных в F #? - PullRequest
8 голосов
/ 18 июля 2010

более FSHUB , LethalLavaLand сказал,

Позвольте мне построить мои ценности!

Итак, вопрос в том, как я могу построить ряд данных в F #, используя встроенные элементы управления .NET 4.0?

Ответы [ 3 ]

13 голосов
/ 18 июля 2010

Поскольку в последнее время я работаю со встроенными элементами управления Microsoft Charting в .NET 4.0 (и мне нравится каждая минута этого!), Я подумал, что смогу ответить на свой вопрос ...

#r "System.Windows.Forms.DataVisualization"

open System.Windows.Forms
open System.Windows.Forms.DataVisualization.Charting

type LineChartForm( title, xs : float seq ) =
    inherit Form( Text=title )

    let chart = new Chart(Dock=DockStyle.Fill)
    let area = new ChartArea(Name="Area1")
    let series = new Series()
    do series.ChartType <- SeriesChartType.Line
    do xs |> Seq.iter (series.Points.Add >> ignore)
    do series.ChartArea <- "Area1"
    do chart.Series.Add( series )
    do chart.ChartAreas.Add(area)
    do base.Controls.Add( chart )

let main() =
    let data = seq { for i in 1..1000 do yield sin(float i / 100.0) }
    let f = new LineChartForm( "Sine", data )
    f.Show()

main()
2 голосов
/ 20 июля 2010

Вы можете оценить мой параметрический график в F # , который визуализирует динамику хищника-жертвы, используя новую функциональность построения диаграмм в .NET 4. Исходное 5-строчное решение Mathematica становится 19 строками кода F #. Неплохо для языка общего назначения!

Однако это одноразовое решение и, следовательно, не очень полезно в F # интерактиве. Для повторного использования той же функциональности в интерактивном режиме вам необходимо решить проблемы с потоками (сортировка данных в поток и из потока пользовательского интерфейса, который обрабатывает постоянный графический интерфейс), как это делает наш продукт F # для визуализации . Техника также описана в моей книге Visual F # 2010 для технических компьютеров .

2 голосов
/ 18 июля 2010

Не забудьте , вам не нужно делать все на F #.

Вы можете свернуть все свои вычисления F # в библиотеку или класс, а затем использовать их на любом языке «Front End», который вам нужен:

Например, вы можете легко выйти замуж за F #заканчивается WPF или Silverlight или C # WinForms.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...