F# Диаграмма на MacOS (Xamarin)
Привет я работаю на Xamarin 6.1.5 на MacOS Я установил FSharp.Charting 0.90.14
это первый раз, когда я пытаюсь использовать его
пытаюсь ли я скомпилировать или я пытаюсь в F# интерактив, я получаю такую ошибку
(Chart.Line [ for x in 1.0 .. 100.0 -> (x, x ** 2.0) ]).ShowChart();;
System.ArgumentNullException: значение не может быть нулевым. Имя параметра: ключ в System.ThrowHelper.ThrowArgumentNullException (...)
EDIT1 Я был действительно очень глуп и не установил версию Gtk
EDIT2 вышеупомянутый однострочный код в F# интерактивно "работает". Выполнение занимает некоторое необычное время, но я вижу окно с графиком. Невозможно навести курсор на график и увидеть координаты, но, возможно, это не настройка по умолчанию? Кроме того, я не понимаю, как закрыть окно, где появляется график. Все хорошо?
1 ответ
Вы не пытаетесь использовать FSharp.Charting
пакет на Mac вместо FSharp.Charting.Gtk
как документация говорит тебе делать?
См. https://fslab.org/FSharp.Charting/ReferencingTheLibrary.html
Изменить: ответ на редактирование исходного вопроса: нет, предупреждений не должно быть. Вот как это работает для меня:
$ fsharpi
F# Interactive for F# 4.1
Freely distributed under the Apache 2.0 Open Source License
For help type #help;;
> #load "packages/FSharp.Charting.Gtk.0.90.14/FSharp.Charting.Gtk.fsx" ;;
[Loading /Users/avysk/Projects/_Sandbox/testfsharpcharting/packages/FSharp.Charting.Gtk.0.90.14/FSharp.Charting.Gtk.fsx]
namespace FSI_0002.FSharp.Charting
val verifyMac : unit -> bool
val isMac : bool
module FsiAutoShow = begin
end
> open FSharp.Charting ;;
> (Chart.Line [ for x in 1.0 .. 100.0 -> (x, x ** 2.0) ]).ShowChart();;
Binding session to '/Users/avysk/Projects/_Sandbox/testfsharpcharting/packages/FSharp.Charting.Gtk.0.90.14/lib/net40/OxyPlot.dll'...
Binding session to '/Users/avysk/Projects/_Sandbox/testfsharpcharting/packages/FSharp.Charting.Gtk.0.90.14/lib/net40/OxyPlot.GtkSharp.dll'...
val it : unit = ()
(Окно появляется сразу.)