fix init.jl
This commit is contained in:
commit
317f01a6b4
53
src/init.jl
53
src/init.jl
@ -67,4 +67,57 @@ function __init__()
|
|||||||
ENV["MPLBACKEND"] = "Agg"
|
ENV["MPLBACKEND"] = "Agg"
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
# ---------------------------------------------------------
|
||||||
|
# Atom PlotPane
|
||||||
|
# ---------------------------------------------------------
|
||||||
|
@require Juno = "e5e0dc1b-0480-54bc-9374-aad01c23163d" begin
|
||||||
|
import Hiccup, Media
|
||||||
|
|
||||||
|
if Juno.isactive()
|
||||||
|
Media.media(Plot, Media.Plot)
|
||||||
|
|
||||||
|
function Juno.render(e::Juno.Editor, plt::Plot)
|
||||||
|
Juno.render(e, nothing)
|
||||||
|
end
|
||||||
|
|
||||||
|
if get(ENV, "PLOTS_USE_ATOM_PLOTPANE", true) in (true, 1, "1", "true", "yes")
|
||||||
|
function Juno.render(pane::Juno.PlotPane, plt::Plot)
|
||||||
|
# temporarily overwrite size to be Atom.plotsize
|
||||||
|
sz = plt[:size]
|
||||||
|
dpi = plt[:dpi]
|
||||||
|
thickness_scaling = plt[:thickness_scaling]
|
||||||
|
jsize = Juno.plotsize()
|
||||||
|
jsize[1] == 0 && (jsize[1] = 400)
|
||||||
|
jsize[2] == 0 && (jsize[2] = 500)
|
||||||
|
|
||||||
|
scale = minimum(jsize[i] / sz[i] for i in 1:2)
|
||||||
|
plt[:size] = (s * scale for s in sz)
|
||||||
|
plt[:dpi] = Plots.DPI
|
||||||
|
plt[:thickness_scaling] *= scale
|
||||||
|
Juno.render(pane, HTML(stringmime(MIME("text/html"), plt)))
|
||||||
|
plt[:size] = sz
|
||||||
|
plt[:dpi] = dpi
|
||||||
|
plt[:thickness_scaling] = thickness_scaling
|
||||||
|
end
|
||||||
|
# special handling for PlotlyJS
|
||||||
|
function Juno.render(pane::Juno.PlotPane, plt::Plot{PlotlyJSBackend})
|
||||||
|
display(Plots.PlotsDisplay(), plt)
|
||||||
|
end
|
||||||
|
else
|
||||||
|
function Juno.render(pane::Juno.PlotPane, plt::Plot)
|
||||||
|
display(Plots.PlotsDisplay(), plt)
|
||||||
|
s = "PlotPane turned off. Unset ENV[\"PLOTS_USE_ATOM_PLOTPANE\"] and restart Julia to enable it."
|
||||||
|
Juno.render(pane, HTML(s))
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
# special handling for plotly... use PlotsDisplay
|
||||||
|
function Juno.render(pane::Juno.PlotPane, plt::Plot{PlotlyBackend})
|
||||||
|
display(Plots.PlotsDisplay(), plt)
|
||||||
|
s = "PlotPane turned off. The plotly backend cannot render in the PlotPane due to javascript issues. Plotlyjs is similar to plotly and is compatible with the plot pane."
|
||||||
|
Juno.render(pane, HTML(s))
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|||||||
@ -254,6 +254,7 @@ end
|
|||||||
# end
|
# end
|
||||||
#
|
#
|
||||||
# html_output_format("svg")
|
# html_output_format("svg")
|
||||||
|
<<<<<<< HEAD
|
||||||
|
|
||||||
|
|
||||||
# ---------------------------------------------------------
|
# ---------------------------------------------------------
|
||||||
@ -278,3 +279,5 @@ function showjuno(io::IO, m, plt)
|
|||||||
plt[:dpi] = dpi
|
plt[:dpi] = dpi
|
||||||
plt[:thickness_scaling] = thickness_scaling
|
plt[:thickness_scaling] = thickness_scaling
|
||||||
end
|
end
|
||||||
|
=======
|
||||||
|
>>>>>>> 85b3aefd677c8c3adf6797cb2d85c1249cf631b8
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user