Makie.jl icon indicating copy to clipboard operation
Makie.jl copied to clipboard

fix bad limits with rotation (no s) attribute

Open ffreyer opened this issue 1 year ago • 9 comments

Description

Fixes this:

Screenshot from 2023-11-24 16-19-44

until we either deprecate rotation or rotations as an attribute (for meshscatter). After:

Screenshot from 2023-11-24 16-21-06

Type of change

  • [x] Bug fix (non-breaking change which fixes an issue)

Checklist

  • [ ] Added an entry in NEWS.md (for new features and breaking changes)
  • [ ] Added or changed relevant sections in the documentation
  • [ ] Added unit tests for new algorithms, conversion methods, etc.
  • [ ] Added reference image tests for new plotting functions, recipes, visual options, etc.

ffreyer avatar Nov 24 '23 15:11 ffreyer

Compile Times benchmark

Note, that these numbers may fluctuate on the CI servers, so take them with a grain of salt. All benchmark results are based on the mean time and negative percent mean faster than the base branch. Note, that GLMakie + WGLMakie run on an emulated GPU, so the runtime benchmark is much slower. Results are from running:

using_time = @ctime using Backend
# Compile time
create_time = @ctime fig = scatter(1:4; color=1:4, colormap=:turbo, markersize=20, visible=true)
display_time = @ctime Makie.colorbuffer(display(fig))
# Runtime
create_time = @benchmark fig = scatter(1:4; color=1:4, colormap=:turbo, markersize=20, visible=true)
display_time = @benchmark Makie.colorbuffer(fig)
using create display create display
GLMakie 3.36s (3.31, 3.47) 0.05+- 387.58ms (309.23, 424.02) 36.16+- 478.03ms (465.35, 532.02) 24.00+- 7.36ms (7.26, 7.62) 0.13+- 25.38ms (25.26, 25.64) 0.13+-
master 3.34s (3.31, 3.37) 0.03+- 394.15ms (390.34, 398.30) 2.60+- 469.86ms (465.76, 476.31) 3.90+- 7.33ms (7.16, 7.48) 0.11+- 25.43ms (25.27, 25.80) 0.20+-
evaluation 0.99x invariant, 0.03s (0.62d, 0.28p, 0.04std) 1.02x invariant, -6.57ms (-0.26d, 0.65p, 19.38std) 0.98x invariant, 8.17ms (0.48d, 0.41p, 13.95std) 1.00x invariant, 0.03ms (0.28d, 0.61p, 0.12std) 1.00x invariant, -0.06ms (-0.34d, 0.54p, 0.16std)
CairoMakie 3.00s (2.95, 3.07) 0.04+- 324.30ms (314.61, 331.36) 6.08+- 143.55ms (140.26, 146.70) 2.31+- 7.57ms (7.41, 7.67) 0.09+- 607.14μs (601.38, 612.06) 3.63+-
master 2.99s (2.93, 3.05) 0.04+- 321.72ms (317.96, 327.31) 3.30+- 143.24ms (142.34, 144.41) 0.87+- 7.54ms (7.43, 7.67) 0.11+- 603.18μs (599.52, 606.94) 2.74+-
evaluation 1.00x invariant, 0.01s (0.31d, 0.58p, 0.04std) 0.99x invariant, 2.57ms (0.53d, 0.35p, 4.69std) 1.00x invariant, 0.31ms (0.18d, 0.75p, 1.59std) 1.00x invariant, 0.03ms (0.26d, 0.63p, 0.10std) 0.99x slower X, 3.95μs (1.23d, 0.04p, 3.19std)
WGLMakie 3.58s (3.52, 3.66) 0.05+- 420.42ms (408.32, 452.91) 14.95+- 8.90s (8.83, 9.00) 0.07+- 9.62ms (9.41, 10.20) 0.28+- 72.14ms (67.81, 80.42) 4.56+-
master 3.58s (3.54, 3.66) 0.04+- 415.50ms (409.48, 429.69) 6.57+- 8.94s (8.88, 9.07) 0.08+- 9.45ms (9.40, 9.50) 0.04+- 73.81ms (67.34, 78.70) 4.44+-
evaluation 1.00x invariant, -0.01s (-0.17d, 0.75p, 0.04std) 0.99x invariant, 4.92ms (0.43d, 0.45p, 10.76std) 1.00x invariant, -0.04s (-0.56d, 0.31p, 0.07std) 0.98x invariant, 0.17ms (0.84d, 0.17p, 0.16std) 1.02x invariant, -1.67ms (-0.37d, 0.50p, 4.50std)

MakieBot avatar Nov 24 '23 15:11 MakieBot

We kind of deprecated rotation for meshscatter in 0.20!

SimonDanisch avatar Nov 27 '23 19:11 SimonDanisch

I'd say we should throw an error when using rotation?

SimonDanisch avatar Nov 27 '23 19:11 SimonDanisch

We kind of deprecated rotation for meshscatter in 0.20!

We did? Neither NEWS nor the blog post mentions this. There should be an error/deprecation message for this, yea. Also text is still setting rotation in MakieCore

ffreyer avatar Nov 27 '23 19:11 ffreyer

I also didn't know that. And shouldn't we deprecate rotations instead because we don't usually use plural?

jkrumbiegel avatar Nov 27 '23 21:11 jkrumbiegel

Hm, rotations is used in the other primitives and backends, that didn't have the weird GLMakie only rotation attribute. Admittedly, since it was GLMakie only and not widely used, I forgot about adding it to the news.

SimonDanisch avatar Nov 27 '23 22:11 SimonDanisch

Ok but still, wouldn't rotation be more consistent?

jkrumbiegel avatar Nov 28 '23 05:11 jkrumbiegel

Yeah, true!

SimonDanisch avatar Nov 28 '23 10:11 SimonDanisch

Then let's deprecate rotations instead. We could also do a "soft soft deprecation" and just remove mention of rotations everywhere and leave it at that for now. Or warnings, I'm also ok with that

jkrumbiegel avatar Nov 28 '23 11:11 jkrumbiegel