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 = ()

(Окно появляется сразу.)

Другие вопросы по тегам