Plots.jl
Plots.jl copied to clipboard
[BUG] Plotting images inserts unwanted padding
Details
When plotting multiple images, there appears white space in between the images. Simple example:
using Plots, Images
imgs = [zeros(Gray{Float64},64,128) for i=1:4]
plotParams = Dict(
:size => (800,400),
:layout => grid(1,4),
:grid => false)
p = plot([plot(i',aspect_ratio=1,axis=false,size=(800,400)) for i in imgs]...; plotParams...)
Output:
This is fine as default behavior, but there doesn't seem to be a way to eliminate it. If I try e.g. adding negative margins, the images end up on top of each other. Example:
using Plots, Images
imgs = [zeros(Gray{Float64},64,128) for i=1:4]
plotParams = Dict(
:size => (800,400),
:layout => grid(1,4),
:left_margin => (-15.0,:mm),
:grid => false)
p = plot([plot(i',aspect_ratio=1,axis=false,size=(800,400)) for i in imgs]...; plotParams...)
Output:
Backends
This bug occurs on ( insert x
below )
Backend | yes | no | untested |
---|---|---|---|
gr (default) | x | ||
pythonplot | x | ||
plotlyjs | x | ||
pgfplotsx | x | ||
unicodeplots | x | ||
inspectdr | x | ||
gaston | x |
Versions
Plots.jl version: v1.40.4
Backend version (]st -m <backend(s)>
): v0.72.8
Output of versioninfo()
:
Julia Version 1.10.3
Commit 0b4590a550 (2024-04-30 10:59 UTC)
Build Info:
Official https://julialang.org/ release
Platform Info:
OS: Windows (x86_64-w64-mingw32)
CPU: 12 × 12th Gen Intel(R) Core(TM) i5-12450H
WORD_SIZE: 64
LIBM: libopenlibm
LLVM: libLLVM-15.0.7 (ORCJIT, alderlake)
Threads: 1 default, 0 interactive, 1 GC (on 12 virtual cores)