specifically its ::Plots.Plot{Plots.PlotlyBackend} dispatch
|
function DashBase.to_dash(p::Plots.Plot{Plots.PlotlyBackend}) |
|
return if haskey(Base.loaded_modules, Base.PkgId(Base.UUID("a03496cd-edff-5a9b-9e67-9cda94a718b5"), "PlotlyBase")) && |
|
haskey(Base.loaded_modules, Base.PkgId(Base.UUID("f2990250-8cf9-495f-b13a-cce12b45703c"), "PlotlyKaleido")) |
|
# Note: technically it would be sufficient if PlotlyBase is loaded, but thats how it is currently handled by Plots.jl |
|
sp = Plots.plotlybase_syncplot(p) |
|
DashBase.to_dash(sp) |
|
else |
|
Dict(:data => Plots.plotly_series(p), :layout => Plots.plotly_layout(p)) |
|
end |
|
end |
which looks up if PlotlyKaleido is loaded to determine if DashBase.to_dash can use Plots.plotlybase_syncplot.
After a quick over in https://github.com/JuliaPlots/Plots.jl, I couldn't find haskey(Base.loaded_modules, #= =#) signatures mentioned in the comment of the above DashBasePlotsExt snippet.
Maybe the pattern in Plots.jl has changed since the DashBase v1 release (back in August 2023) ? 🤔
Having PlotlyKaleido in the DashBase [compat] list may cause issues with Julia 1.10 (ref JuliaPlots/PlotlyKaleido.jl#6)
We should take a 2nd look at this.
specifically its
::Plots.Plot{Plots.PlotlyBackend}dispatchDashBase.jl/ext/DashBasePlotsExt.jl
Lines 7 to 16 in f3ea1ae
which looks up if
PlotlyKaleidois loaded to determine ifDashBase.to_dashcan usePlots.plotlybase_syncplot.After a quick over in https://github.com/JuliaPlots/Plots.jl, I couldn't find
haskey(Base.loaded_modules, #= =#)signatures mentioned in the comment of the aboveDashBasePlotsExtsnippet.Maybe the pattern in Plots.jl has changed since the DashBase v1 release (back in August 2023) ? 🤔
Having PlotlyKaleido in the DashBase
[compat]list may cause issues with Julia 1.10 (ref JuliaPlots/PlotlyKaleido.jl#6)We should take a 2nd look at this.