Más en FSHUB, LethalLavaLand dijo,¿Cómo grafico una serie de datos en F #?
Let Me trazo mis valores!
Entonces la pregunta es, ¿cómo puedo trazar una serie de datos en F # usando los controles incorporados de .NET 4.0?
Más en FSHUB, LethalLavaLand dijo,¿Cómo grafico una serie de datos en F #?
Let Me trazo mis valores!
Entonces la pregunta es, ¿cómo puedo trazar una serie de datos en F # usando los controles incorporados de .NET 4.0?
Desde que he estado trabajando con los controles incorporados de Microsoft Charting en .NET 4.0 últimamente (¡y me encanta cada minuto!), Pensé en probar un poco responder a mi propia pregunta ...
#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()
no se olvide, que no tienen que hacer todo en F #.
Puede enrollar todos sus F # cálculos en una biblioteca o clase, y luego utilizar eso en cualquier idioma "front-end" que desee:
Por ejemplo, usted podría casarse con facilidad F # back-end con WPF o Silverlight o C# WinForms.
Sin embargo, si estás trabajando con datos, entonces explorarlos interactivamente es uno de los puntos fuertes de F # (y no se puede hacer eso con C#). Y para exploración interactiva, los gráficos son esenciales ... –
Creo que me has malentendido, estoy de acuerdo con la interactividad. Yo también trabajaría con F #. Sin embargo, para el código de producción, usaría F # como back-end y aprovecharé el "Front-End" usando WPF/otros idiomas en su lugar 'nativo'. – Darknight
Gracias por el consejo. De hecho, eso es exactamente lo que he estado haciendo: analizar, filtrar, transformar y analizar datos en F #, y luego usar C# para la presentación de gráficos. El soporte de Visual Studio UI Designer hizo que la creación de la aplicación de control fuera muy fácil, y ayudó a ajustar la apariencia del gráfico, etc. –
Es posible apreciar mi parametric plot in F# que visualiza la dinámica depredador-presa utilizando la nueva funcionalidad de gráficos en .NET 4. La solución original Mathematica 5 líneas se convierte en 19 líneas de código F #. ¡No está mal para un lenguaje de propósito general!
Sin embargo, esta es una solución única y, en consecuencia, no es muy útil en F # interactivo. Para reutilizar la misma funcionalidad de forma interactiva, debe manejar problemas de subprocesamiento (ordenar los datos hacia y desde un subproceso de interfaz de usuario que maneja una GUI persistente) como lo hace nuestro producto F# for Visualization. La técnica también se describe en mi Visual F# 2010 for Technical Computing book.
El "Entorno de muestras para Microsoft Chart Controls" tiene una tonelada de ejemplos extremadamente útiles, todo envuelto en una interfaz de usuario sencilla para navegar: http://code.msdn.microsoft.com/mschart –
Amigo, estás hablando contigo mismo demasiado. – Massif
suele ser el primer signo de locura .. – Darknight