Skip to content

Colors for mesh3d in pgfplotsx backend #5213

@darnstrom

Description

@darnstrom

Details

The following code results in a red triangle, even though I pass the color :blue:

using Plots
pgfplotsx()
x = [0, 1, 2, 0]
y = [0, 0, 1, 2]
z = [0, 2, 0, 1]
i = [0, 0, 0, 1]
j = [1, 2, 3, 2]
k = [2, 3, 1, 3]
mesh3d(x, y, z; connections = (i, j, k), color=:blue)

It works as expected with the gr() and plotlyjs().

I can get the expected behaviour (a blue triangle) by using extra_kwargs as follows:

mesh3d(x, y, z; connections = (i, j, k), extra_kwargs= Dict(:series => Dict("fill" => "blue")))

One fix would therefore be to pass color to "fill" (and maybe also "draw") in the pgfplotsx backend. I would be happy to contribute, but I don't know where to start.

Backends

This bug occurs on ( insert x below )

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

Versions

Plots.jl version: 1.41.3
Backend version: 1.6.2
Output of versioninfo():

Julia Version 1.12.1
Commit ba1e628ee49 (2025-10-17 13:02 UTC)
Build Info:
  Official https://julialang.org release
Platform Info:
  OS: Linux (x86_64-linux-gnu)
  CPU: 16 × AMD Ryzen 7 8840HS w/ Radeon 780M Graphics
  WORD_SIZE: 64
  LLVM: libLLVM-18.1.7 (ORCJIT, znver3)
  GC: Built with stock GC

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions