83 lines
2.1 KiB
Julia
83 lines
2.1 KiB
Julia
using Plots
|
|
|
|
df = rand(5, 5) * 10 |> Matrix
|
|
|
|
function pairplot(df)
|
|
rows, cols = size(df)
|
|
y = ones(3)
|
|
title = Plots.scatter(
|
|
y,
|
|
marker = 0,
|
|
markeralpha = 0,
|
|
annotations = (2, y[2], Plots.text("Pair plot")),
|
|
axis = ([], false),
|
|
leg = false,
|
|
size = (200, 100),
|
|
)
|
|
plots = []
|
|
for row = 1:rows, col = 1:cols
|
|
if row == rows && col == 1
|
|
push!(
|
|
plots,
|
|
scatter(
|
|
df[!, row],
|
|
df[!, col],
|
|
xtickfont = font(4),
|
|
ytickfont = font(4),
|
|
legend = false,
|
|
xlabel = "foo",
|
|
xguidefontsize = font(4),
|
|
ylabel = "bar",
|
|
yguidefontsize = font(4),
|
|
),
|
|
)
|
|
|
|
elseif row == rows
|
|
push!(
|
|
plots,
|
|
scatter(
|
|
df[!, row],
|
|
df[!, col],
|
|
xtickfont = font(4),
|
|
ytickfont = font(4),
|
|
legend = false,
|
|
xlabel = "foo",
|
|
xguidefontsize = font(4),
|
|
),
|
|
)
|
|
elseif col == 1
|
|
push!(
|
|
plots,
|
|
scatter(
|
|
df[!, row],
|
|
df[!, col],
|
|
xtickfont = font(4),
|
|
ytickfont = font(4),
|
|
legend = false,
|
|
ylabel = "bar",
|
|
yguidefontsize = font(4),
|
|
),
|
|
)
|
|
else
|
|
push!(
|
|
plots,
|
|
scatter(
|
|
df[!, row],
|
|
df[!, col],
|
|
xtickfont = font(4),
|
|
ytickfont = font(4),
|
|
legend = false,
|
|
),
|
|
)
|
|
end
|
|
end
|
|
plot(
|
|
title,
|
|
plot(plots..., layout = (rows, cols)),
|
|
layout = grid(2, 1, heights = [0.05, 0.95]),
|
|
)
|
|
end
|
|
|
|
pairplot(df)
|
|
|