我想在我的项目中将FSharpChart与fsx脚本文件一起使用。我使用Nuget下载并引用了MSDN.FSharpChart.dll,我的代码如下所示
#r @"..\packages\MSDN.FSharpChart.dll.0.60\lib\MSDN.FSharpChart.dll"
open System.Drawing
open MSDN.FSharp.Charting
[for x in 0.0 .. 0.1 .. 6.0 -> sin x + cos (2.0 * x)]
|> FSharpChart.Line
该路径是正确的,因为VS 2012为我提供了智能感知,并且知道MSDN.FSharp命名空间。问题是,当我在FSI中运行此脚本时,什么也没显示。
怎么了?
最佳答案
为了使图表从FSI中显示出来,您应该将FSharpChart.fsx预加载到FSI session 中,如下面的代码片段所示:
#load @"<your path here>\FSharpChart.fsx"
[for x in 0.0 .. 0.1 .. 6.0 -> sin x + cos (2.0 * x)]
|> MSDN.FSharp.Charting.FSharpChart.Line;;
2012年8月23日更新:
为了进行比较,用
FSharpChart.dll
可视化相同的图表将需要一些WinForms管道:#r @"<your path here>\MSDN.FSharpChart.dll"
#r "System.Windows.Forms.DataVisualization.dll"
open System.Windows.Forms
open MSDN.FSharp.Charting
let myChart = [for x in 0.0 .. 0.1 .. 6.0 -> sin x + cos (2.0 * x)]
|> FSharpChart.Line
let form = new Form(Visible = true, TopMost = true, Width = 700, Height = 500)
let ctl = new ChartControl(myChart, Dock = DockStyle.Fill)
form.Controls.Add(ctl)
关于f# - 如何从fsx脚本文件使用FSharpChart,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/11798568/