Merge pull request #886 from daschw/ds-spy

Changed spy recipe and added spy example to tests (fix #883)
This commit is contained in:
Daniel Schwabeneder 2017-06-07 11:16:06 +02:00 committed by GitHub
commit 3def6265c4
2 changed files with 13 additions and 0 deletions

View File

@ -319,6 +319,15 @@ PlotExample("Animation with subplots",
end)]
),
PlotExample("Spy",
"For a matrix `mat` with unique nonzeros `spy(mat)` returns a colorless plot. If `mat` has various different nonzero values, a colorbar is added. The colorbar can be disabled with `legend = nothing`. As always, the marker shape and size can be changed with `spy(mat, markersize = 3, markershape = :star)`",
[:(begin
a = spdiagm((ones(50), ones(49), ones(49), ones(40), ones(40)),(0, 1, -1, 10, -10))
b = spdiagm((1:50, 1:49, 1:49, 1:40, 1:40),(0, 1, -1, 10, -10))
plot(spy(a, markershape = :dtriangle), spy(b), markersize = 3, title = ["Unique nonzeros" "Different nonzeros"])
end)]
),
]
# ---------------------------------------------------------------------------------

View File

@ -976,6 +976,9 @@ end
@assert length(g.args) == 1 && typeof(g.args[1]) <: AbstractMatrix
seriestype := :spy
mat = g.args[1]
if length(unique(mat[mat .!= 0])) < 2
legend --> nothing
end
n,m = size(mat)
Plots.SliceIt, 1:m, 1:n, Surface(mat)
end
@ -999,6 +1002,7 @@ end
y := rs
z := nothing
seriestype := :scatter
grid --> false
()
end