diff --git a/Project.toml b/Project.toml index 6b6c0284..9c172eb9 100644 --- a/Project.toml +++ b/Project.toml @@ -15,6 +15,7 @@ JSON = "682c06a0-de6a-54ab-a142-c8b1cf79cde6" LinearAlgebra = "37e2e46d-f89d-539d-b4ee-838fcccc9c8e" Measures = "442fdcdd-2543-5da2-b0f3-8c86c306513e" NaNMath = "77ba4419-2d1f-58cd-9bb1-8ffee604a2e3" +PGFPlotsX = "8314cec4-20b6-5062-9cdb-752b83310925" Pkg = "44cfe95a-1eb2-52ea-b672-e2afdf69b78f" PlotThemes = "ccf2f8ad-2431-5c83-bf29-c5338b663b6a" PlotUtils = "995b91a9-d308-5afd-9ec6-746e21dbc043" diff --git a/src/backends.jl b/src/backends.jl index 26f01c91..d8074d35 100644 --- a/src/backends.jl +++ b/src/backends.jl @@ -252,6 +252,7 @@ end @init_backend PlotlyJS @init_backend GR @init_backend PGFPlots +@init_backend PGFPlotsX @init_backend InspectDR @init_backend HDF5 @@ -661,3 +662,57 @@ const _inspectdr_marker = Symbol[ ] const _inspectdr_scale = [:identity, :ln, :log2, :log10] +# ------------------------------------------------------------------------------ +# pgfplotsx + +const _pgfplotsx_attr = merge_with_base_supported([ + :annotations, + :background_color_legend, :background_color_inside, :background_color_outside, + :foreground_color_legend, :foreground_color_grid, :foreground_color_axis, + :foreground_color_text, :foreground_color_border, + :label, + :seriescolor, :seriesalpha, + :linecolor, :linestyle, :linewidth, :linealpha, + :markershape, :markercolor, :markersize, :markeralpha, + :markerstrokewidth, :markerstrokecolor, :markerstrokealpha, + :fillrange, :fillcolor, :fillalpha, + :bins, + :layout, + :title, :window_title, + :guide, :lims, :ticks, :scale, :flip, + :match_dimensions, + :titlefontfamily, :titlefontsize, :titlefonthalign, :titlefontvalign, + :titlefontrotation, :titlefontcolor, + :legendfontfamily, :legendfontsize, :legendfonthalign, :legendfontvalign, + :legendfontrotation, :legendfontcolor, + :tickfontfamily, :tickfontsize, :tickfonthalign, :tickfontvalign, + :tickfontrotation, :tickfontcolor, + :guidefontfamily, :guidefontsize, :guidefonthalign, :guidefontvalign, + :guidefontrotation, :guidefontcolor, + :grid, :gridalpha, :gridstyle, :gridlinewidth, + :legend, :legendtitle, :colorbar, :colorbar_title, :colorbar_entry, + :fill_z, :line_z, :marker_z, :levels, + :ribbon, :quiver, + :orientation, + :overwrite_figure, + :polar, + :aspect_ratio, + :normalize, :weights, + :inset_subplots, + :bar_width, + :arrow, + :framestyle, + :tick_direction, + :camera, + :contour_labels, +]) +const _pgfplotsx_seriestype = [ + :path, :scatter, :straightline, + :heatmap, :pie, :image, + :contour, :path3d, :scatter3d, :surface, :wireframe, :volume, + :shape +] +const _pgfplotsx_style = [:auto, :solid, :dash, :dot, :dashdot, :dashdotdot] +const _pgfplotsx_marker = _allMarkers +const _pgfplotsx_scale = [:identity, :log10] +is_marker_supported(::PGFPlotsXBackend, shape::Shape) = false diff --git a/src/backends/pgfplotsx.jl b/src/backends/pgfplotsx.jl new file mode 100644 index 00000000..27122d8b --- /dev/null +++ b/src/backends/pgfplotsx.jl @@ -0,0 +1,13 @@ +# -------------------------------------------------------------------------------------- +function _show(io::IO, mime::MIME"image/svg+xml", plt::Plot{PGFPlotsXBackend}) +end + +function _show(io::IO, mime::MIME"application/pdf", plt::Plot{PGFPlotsXBackend}) +end + +function _show(io::IO, mime::MIME"application/x-tex", plt::Plot{PGFPlotsXBackend}) +end + +function _display(plt::Plot{PGFPlotsXBackend}) + +end