support mathjax header in plotly backend

This commit is contained in:
Helmut Haensel 2020-05-20 10:54:57 +02:00
parent 593331dec2
commit 8d2939fcae
2 changed files with 8 additions and 1 deletions

View File

@ -374,6 +374,7 @@ function _initialize_backend(pkg::PlotlyBackend)
catch
@info "For saving to png with the Plotly backend ORCA has to be installed."
end
push!(_plot_defaults, :include_mathjax => "")
end
const _plotly_attr = merge_with_base_supported([
@ -417,6 +418,7 @@ const _plotly_attr = merge_with_base_supported([
:tick_direction,
:camera,
:contour_labels,
:include_mathjax,
])
const _plotly_seriestype = [

View File

@ -813,6 +813,11 @@ function plotly_html_head(plt::Plot)
local_file = ("file://" * plotly_local_file_path)
plotly =
use_local_dependencies[] ? local_file : "https://cdn.plot.ly/plotly-latest.min.js"
include_mathjax = get(plt.attr, :include_mathjax, "")
mathjax_file = include_mathjax != "cdn" ? ("file://" * include_mathjax) : "https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.7/MathJax.js?config=TeX-MML-AM_CHTML"
mathjax_head = include_mathjax == "" ? "" : "<script async src=\"$mathjax_file\"></script>\n\t\t"
if isijulia() && !ijulia_initialized[]
# using requirejs seems to be key to load a js depency in IJulia!
# https://requirejs.org/docs/start.html
@ -826,7 +831,7 @@ function plotly_html_head(plt::Plot)
""")
ijulia_initialized[] = true
end
return "<script src=$(repr(plotly))></script>"
return "$mathjax_head<script src=$(repr(plotly))></script>"
end
function plotly_html_body(plt, style = nothing)