diff --git a/src/backends.jl b/src/backends.jl index bdfdea3d8..c9e65aa54 100644 --- a/src/backends.jl +++ b/src/backends.jl @@ -943,7 +943,34 @@ const _unicodeplots_seriestype = [ :spy, ] const _unicodeplots_style = [:auto, :solid] -const _unicodeplots_marker = [:none, :auto, :circle] +const _unicodeplots_marker = [ + :none, + :auto, + :pixel, + # vvvvvvvvvv shapes + :circle, + :rect, + :star5, + :diamond, + :hexagon, + :cross, + :xcross, + :utriangle, + :dtriangle, + :rtriangle, + :ltriangle, + :pentagon, + # :heptagon, + # :octagon, + :star4, + :star6, + # :star7, + :star8, + :vline, + :hline, + :+, + :x, +] const _unicodeplots_scale = [:identity, :ln, :log2, :log10] # Additional constants diff --git a/src/backends/unicodeplots.jl b/src/backends/unicodeplots.jl index 15ac9db40..c1608579f 100644 --- a/src/backends/unicodeplots.jl +++ b/src/backends/unicodeplots.jl @@ -115,11 +115,14 @@ function addUnicodeSeries!( return UnicodePlots.spy(series[:z].surf; kw...) end + series_kw = (;) + # now use the ! functions to add to the plot if st in (:path, :straightline, :shape) func = UnicodePlots.lineplot! elseif st == :scatter || series[:markershape] != :none func = UnicodePlots.scatterplot! + series_kw = (; marker=series[:markershape]) else error("Series type $st not supported by UnicodePlots") end @@ -129,7 +132,7 @@ function addUnicodeSeries!( for (n, segment) in enumerate(series_segments(series, st; check = true)) i, rng = segment.attr_index, segment.range lc = get_linecolor(series, i) - up = func(up, x[rng], y[rng]; color = up_color(lc), name = n == 1 ? label : "") + up = func(up, x[rng], y[rng]; color = up_color(lc), name = n == 1 ? label : "", series_kw...) end for (xi, yi, str, fnt) in EachAnn(series[:series_annotations], x, y) diff --git a/src/examples.jl b/src/examples.jl index 62d1cd02e..049e5172a 100644 --- a/src/examples.jl +++ b/src/examples.jl @@ -1255,7 +1255,6 @@ _backend_skips = Dict( :unicodeplots => [ 5, # limits issue 6, # embedded images unsupported - 13, # markers unsupported 16, # nested layout unsupported 21, # custom markers unsupported 22, # contours unsupported @@ -1269,7 +1268,6 @@ _backend_skips = Dict( 43, # heatmap with DateTime 45, # error bars 47, # mesh3D unsupported - 48, # markershapes unsupported 49, # polar heatmap 50, # 3D surface unsupported 51, # embedded images unsupported