Dear julia community,
I am struggling trying to adjust the position of the x and y labels of my plots.
I have a figure made by 4 heatmaps with a nearby colormap:
plot_xlim_heat = (-3,3)
plot_xlim_diss = (-5,5)
# Build the layout
layout_grid = @layout [grid(2,2) a{0.05w}]
c_max = max(wf_mol_nlscha..., wf_mol_exact..., wf_diss_nlscha..., wf_diss_exact...)
N_x_cmap = 101
x_values = range(0, c_max, N_x_cmap)
x_values_cmap = ones(N_x_cmap, 1)
x_values_cmap[:, 1] .= x_values
x_ticks = Array(0:0.02:c_max)
colorbar = heatmap([1], x_values, x_values_cmap, legend=:none, xticks=:none,
yticks=(x_ticks, string.(x_ticks)))
h1 = heatmap(x_axis_mol, y_axis_mol, wf_mol_nlscha, aspect_ratio=:equal,
xlims=plot_xlim_heat, ylims=plot_xlim_heat, title="NeuroSSCHA - 2a₀",
xlabel="r₁ [a₀]", ylabel="r₂ [a₀]", legend=:none, bottom_margin=Plots.cm)
h2 = heatmap(x_axis_exact, x_axis_exact, wf_mol_exact, aspect_ratio=:equal,
xlims=plot_xlim_heat, ylims=plot_xlim_heat, title="Exact - 2a₀",
xlabel="r₁ [a₀]", ylabel="r₂ [a₀]", bottom_margin=Plots.cm, legend=:none)
h3 = heatmap(x_axis_diss, y_axis_diss, wf_diss_nlscha, aspect_ratio=:equal,
xlims=plot_xlim_diss, ylims=plot_xlim_diss, title="NeuroSSCHA - 4a₀",
xlabel="r₁ [a₀]", ylabel="r₂ [a₀]", legend=:none)
h4 = heatmap(x_axis_exact, x_axis_exact, wf_diss_exact, aspect_ratio=:equal,
xlims=plot_xlim_diss, ylims=plot_xlim_diss, title="Exact - 4a₀",
xlabel="r₁ [a₀]", ylabel="r₂ [a₀]", legend=:none)
plot(h1, h2, h3, h4, colorbar,
layout=layout_grid, dpi=200,
size=(700,650)
)
However, the position of the labels of the x and y axis are really far from the actual axis, and I want to get them much closer so I can reduce the margins. I also would like to increase the separation between the title of each figure. Coming from python and matplotlib, I was used to something like:
#adjust y-axis label position
ax.yaxis.set_label_coords(-.1, .5)
#adjust x-axis label position
ax.xaxis.set_label_coords(.5, -.1)
However, I’m struggling to find an equivalent command that gives me the same kind of flexibility with plots.
Do you know a possible solution?