Джулия: использование @manipulate создает сюжет, но не обновляется после сохранения записной книжки и повторного открытия

#plot #julia #plots.jl #manipulate

Вопрос:

Я совершенно сбит с толку следующим:

  1. Я создаю сюжет в Julia 1.6.3 с текущими версиями Interact.jl и WebIO.jl и использую макрос @manipulate для создания сюжета с полем параметров и ползунком. Графики работают и могут быть обработаны соответствующим образом, как вы ожидаете.
  2. Я работаю над macOS 12.0.1 с установленным последним дистрибутивом Conda. Вот код, который я использую в записной книжке jupyterlab:
 using Plots using Interact using DataStructures x = y = 0:0.1:30  freqs = OrderedDict(zip(["π/4", "π/2", "3π/4", "π"], [π/4, π/2, 3π/4, π])) mp = @manipulate for freq1 in freqs, freq2 in slider(0.01:0.1:4π; label="freq2")  y = @. sin(freq1*x) * sin(freq2*x)  plot(x, y) end  

Это будет выполняться в новом ноутбуке, как и ожидалось. НО: сохраните записную книжку, перезапустите jupyterlab и откройте записную книжку, а затем будет создан сюжет, но интерактивный аспект не будет работать. Просто чтобы сделать вещи еще более запутанными (но это, вероятно, огромная подсказка, которую я, по-видимому, не в состоянии использовать для решения проблемы), если вы откроете чистую записную книжку, скопируйте и вставьте код в ячейку в этой новой записной книжке, это сработает!

Я пробовал это в Safari, Chrome и Firefox, и такое же поведение существует.

Может ли кто-нибудь пролить свет на это? Виджеты взаимодействия делают Джулию таким ценным инструментом для обучения, и хотя я мог бы работать в ноутбуках Pluto, мне бы очень хотелось иметь возможность работать со стандартными ноутбуками Джулии.

ОБНОВЛЕНИЕ: (19:39 UTC 12 ноября 2021)

Просто проверил код выше на PopOS! с Джулией 1.6.3. Та же проблема. В первый раз он запускается, и ползунки работают. Сохраните и закройте браузер, убейте ядро, а затем перезапустите лабораторию jupyter, что приведет к сбою: график отображается, но ползунки больше не обновляют графики при манипулировании.

Заранее спасибо. Я в тупике.