Skip to content

Plot Symmetric matrix #5177

@hersle

Description

@hersle

Details

using Plots, LinearAlgebra
heatmap(Symmetric(zeros(5, 5)))
ERROR: ArgumentError: Cannot set a non-diagonal index in a symmetric matrix
Stacktrace:
  [1] setindex!
    @ ~/.julia/juliaup/julia-1.11.6+0.x64.linux.gnu/share/julia/stdlib/v1.11/LinearAlgebra/src/symmetric.jl:258 [inlined]
  [2] _setindex!
    @ ./abstractarray.jl:1443 [inlined]
  [3] setindex!
    @ ./abstractarray.jl:1413 [inlined]
  [4] macro expansion
    @ ./broadcast.jl:973 [inlined]
  [5] macro expansion
    @ ./simdloop.jl:77 [inlined]
  [6] copyto!
    @ ./broadcast.jl:972 [inlined]
  [7] copyto!
    @ ./broadcast.jl:925 [inlined]
  [8] materialize!
    @ ./broadcast.jl:883 [inlined]
  [9] materialize!
    @ ./broadcast.jl:880 [inlined]
 [10] broadcast!(f::RecipesPipeline.var"#13#14", dest::Symmetric{Float64, Matrix{…}}, As::Symmetric{Float64, Matrix{…}})
    @ Base.Broadcast ./broadcast.jl:849
 [11] _prepare_series_data
    @ ~/.julia/packages/RecipesPipeline/BGM3l/src/series.jl:20 [inlined]
 [12] _prepare_series_data
    @ ~/.julia/packages/RecipesPipeline/BGM3l/src/series.jl:29 [inlined]
 [13] _series_data_vector(x::Surface{Symmetric{Float64, Matrix{Float64}}}, plotattributes::Dict{Symbol, Any})
    @ RecipesPipeline ~/.julia/packages/RecipesPipeline/BGM3l/src/series.jl:36
 [14] macro expansion
    @ ~/.julia/packages/RecipesPipeline/BGM3l/src/series.jl:130 [inlined]
 [15] apply_recipe(plotattributes::AbstractDict{Symbol, Any}, ::Type{RecipesPipeline.SliceIt}, x::Any, y::Any, z::Any)
    @ RecipesPipeline ~/.julia/packages/RecipesBase/BRe07/src/RecipesBase.jl:300
 [16] _process_userrecipes!(plt::Any, plotattributes::Any, args::Any)
    @ RecipesPipeline ~/.julia/packages/RecipesPipeline/BGM3l/src/user_recipe.jl:38
 [17] recipe_pipeline!(plt::Any, plotattributes::Any, args::Any)
    @ RecipesPipeline ~/.julia/packages/RecipesPipeline/BGM3l/src/RecipesPipeline.jl:72
 [18] _plot!(plt::Plots.Plot, plotattributes::Any, args::Any)
    @ Plots ~/.julia/packages/Plots/xKhUG/src/plot.jl:223
 [19] plot(args::Any; kw...)
    @ Plots ~/.julia/packages/Plots/xKhUG/src/plot.jl:102
 [20] heatmap(::Any, ::Vararg{Any}; kw...)
    @ Plots ~/.julia/packages/RecipesBase/BRe07/src/RecipesBase.jl:427
 [21] top-level scope
    @ REPL[14]:2

Backends

This bug occurs on ( insert x below )

Backend yes no untested
gr (default) x
unicodeplots x
pythonplot x
pgfplotsx x
plotlyjs x
plotly x
gaston x

Versions

Plots.jl version: Plots v1.40.19
Backend version (]st -m <backend(s)>): GR v0.73.17
Output of versioninfo():

Julia Version 1.11.6
Commit 9615af0f269 (2025-07-09 12:58 UTC)
Build Info:
  Official https://julialang.org/ release
Platform Info:
  OS: Linux (x86_64-linux-gnu)
  CPU: 20 × 12th Gen Intel(R) Core(TM) i7-12800H
  WORD_SIZE: 64
  LLVM: libLLVM-16.0.6 (ORCJIT, alderlake)
Threads: 1 default, 0 interactive, 1 GC (on 20 virtual cores)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions