Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Prototype of next-generation interface #2810

Merged
merged 92 commits into from
May 16, 2022
Merged

Prototype of next-generation interface #2810

merged 92 commits into from
May 16, 2022

Conversation

mwaskom
Copy link
Owner

@mwaskom mwaskom commented May 16, 2022

mwaskom and others added 30 commits May 15, 2022 20:38
Squashed commit of the following:

commit 4d12345d1df8673af6abba779d84cf5fbdf07789
Author: Michael Waskom <[email protected]>
Date:   Thu Jun 3 16:11:47 2021 -0400

    Pass PlotData into splitgen, not Layer

commit 3b878a1
Author: Michael Waskom <[email protected]>
Date:   Thu Jun 3 15:04:11 2021 -0400

    Add Ribbon mark to test out ymin/ymax variables

commit cd18fdd
Author: Michael Waskom <[email protected]>
Date:   Thu Jun 3 11:59:38 2021 -0400

    Prototype numeric scale parameterization

commit a203164
Author: Michael Waskom <[email protected]>
Date:   Thu Jun 3 11:02:40 2021 -0400

    Account for data reductions when assigning facet axes

commit c58de61
Author: Michael Waskom <[email protected]>
Date:   Wed Jun 2 21:43:56 2021 -0400

    Allow color to be passed to Line

commit 28f9297
Author: Michael Waskom <[email protected]>
Date:   Wed Jun 2 21:35:03 2021 -0400

    Add prototype for unit conversion and scaling

commit 7e06479
Author: Michael Waskom <[email protected]>
Date:   Fri May 28 18:54:49 2021 -0400

    Functional prototype of Stat application

commit bf20f06
Author: Michael Waskom <[email protected]>
Date:   Thu May 27 18:09:51 2021 -0400

    Functional prototype of faceting

commit 09ca84f
Author: Michael Waskom <[email protected]>
Date:   Thu May 27 17:50:09 2021 -0400

    One approach to group-based iteration

commit 5471de8
Author: Michael Waskom <[email protected]>
Date:   Thu May 27 16:25:21 2021 -0400

    Simple and somewhat surprisingly functional splitgen prototype

commit 4f84bfe
Author: Michael Waskom <[email protected]>
Date:   Thu May 27 13:55:01 2021 -0400

    Fix (and rename) PlotData.concat

commit 239cad9
Author: Michael Waskom <[email protected]>
Date:   Tue May 25 20:31:12 2021 -0400

    Prototypes of several methods; also some name bikeshedding

commit ef3f4d2
Author: Michael Waskom <[email protected]>
Date:   Tue May 25 12:06:12 2021 -0400

    Hue-mapped Point prototype

commit 4b555d1
Author: Michael Waskom <[email protected]>
Date:   Tue May 25 09:48:01 2021 -0400

    Put in a couple of stubs for methods we will need

commit 75e5c23
Author: Michael Waskom <[email protected]>
Date:   Mon May 24 11:37:24 2021 -0400

    The most basic prototype that actually gives a plot

commit 753db36
Author: Michael Waskom <[email protected]>
Date:   Fri May 21 17:48:43 2021 -0400

    Moving HueMapping-related code over with partial typing success

commit c11bf7e
Author: Michael Waskom <[email protected]>
Date:   Fri May 21 14:31:29 2021 -0400

    Use modern type hinting syntax

commit 60222d5
Author: Michael Waskom <[email protected]>
Date:   Thu May 20 19:45:59 2021 -0400

    Make mypy green, improve comments

commit 718a191
Author: Michael Waskom <[email protected]>
Date:   Thu May 20 11:23:22 2021 -0400

    Some more name and type shedding

commit 8b1202b
Author: Michael Waskom <[email protected]>
Date:   Wed May 19 18:30:45 2021 -0400

    Working DataSet.update logic

commit 4ca5964
Author: Michael Waskom <[email protected]>
Date:   Tue May 18 20:46:43 2021 -0400

    First steps towards implementing DataSource, with issues

commit ecd5773
Author: Michael Waskom <[email protected]>
Date:   Tue May 18 17:00:55 2021 -0400

    Some more typing, starting a simple scatterplot prototype

commit 1440647
Author: Michael Waskom <[email protected]>
Date:   Mon May 17 18:14:36 2021 -0400

    More notes and structrue ... maybe types?

commit 4e29433
Author: Michael Waskom <[email protected]>
Date:   Mon May 17 17:01:33 2021 -0400

    Very basic prototype, lots of open questions
Squashed commit of the following:

commit 560c22365d2890809510a598bfd31683f107a1a6
Author: Michael Waskom <[email protected]>
Date:   Wed Jun 9 17:27:52 2021 -0400

    Add basic prototype of scale_datetime

commit 3d38b9b
Author: Michael Waskom <[email protected]>
Date:   Mon Jun 7 17:54:54 2021 -0400

    Move numeric scaling of norm-able semantics into scale_numeric method

commit 771c9f1
Author: Michael Waskom <[email protected]>
Date:   Sun Jun 6 20:38:12 2021 -0400

    Incomplete work using scale methods to control hue mapping

commit 806f16c
Author: Michael Waskom <[email protected]>
Date:   Sat Jun 5 20:40:57 2021 -0400

    Add categorical coordinate variables
Squashed commit of the following:

commit d8b95ce
Author: Michael Waskom <[email protected]>
Date:   Sat Jun 19 15:01:47 2021 -0400

    Fix some typing issues

commit 11ba980
Author: Michael Waskom <[email protected]>
Date:   Sat Jun 19 14:25:33 2021 -0400

    Address some TODOs in data module

commit 96e8d25
Author: Michael Waskom <[email protected]>
Date:   Sat Jun 19 10:49:16 2021 -0400

    Documentation in data module

commit d74205f
Author: Michael Waskom <[email protected]>
Date:   Fri Jun 18 21:19:37 2021 -0400

    Add tests for PlotData.concat

commit 86a5c87
Author: Michael Waskom <[email protected]>
Date:   Fri Jun 18 19:19:46 2021 -0400

    Test additional long-form data parsing functionality

commit fcd5f39
Author: Michael Waskom <[email protected]>
Date:   Sat Jun 12 20:56:18 2021 -0400

    Port tests for previous PlotData functionality; concat method untested

commit ce17015
Author: Michael Waskom <[email protected]>
Date:   Sat Jun 12 11:55:52 2021 -0400

    Port HueMapping tests; with datetime mapping unimplemented/untested for now

commit 1e7cb3a
Author: Michael Waskom <[email protected]>
Date:   Fri Jun 11 16:45:46 2021 -0400

    Get typechecking up and running

commit 3136033
Author: Michael Waskom <[email protected]>
Date:   Fri Jun 11 16:44:53 2021 -0400

    Start transition to explicit imports of seaborn parts

commit 0921334
Author: Michael Waskom <[email protected]>
Date:   Fri Jun 11 14:30:32 2021 -0400

    Add tests for _core.rules module
Squashed commit of the following:

commit e6f99078d46947eab678b9dd0303657a3129f9fc
Author: Michael Waskom <[email protected]>
Date:   Sun Aug 1 17:56:49 2021 -0400

    Address a couple TODOs

commit c48ba3a
Author: Michael Waskom <[email protected]>
Date:   Mon Jul 26 06:42:29 2021 -0400

    Add docstrings in Subplots

commit 97e6465
Author: Michael Waskom <[email protected]>
Date:   Sun Jul 25 17:53:22 2021 -0400

    Fix unshared label visibility test

commit e2d93a2
Author: Michael Waskom <[email protected]>
Date:   Sun Jul 25 17:16:41 2021 -0400

    Add more label visibility tests

commit 698ee72
Author: Michael Waskom <[email protected]>
Date:   Sat Jul 24 11:08:32 2021 -0400

    Begin adding label visibility tests

commit 97167b4
Author: Michael Waskom <[email protected]>
Date:   Mon Jul 19 06:55:48 2021 -0400

    Fix interior tick labels with unshared axes

commit 9331d5d
Author: Michael Waskom <[email protected]>
Date:   Sat Jul 17 17:03:48 2021 -0400

    Fix interior labels for wrapped plots

commit 38f2efa
Author: Michael Waskom <[email protected]>
Date:   Sat Jul 17 16:03:34 2021 -0400

    Fix non-cartesian interior labels

commit 3c07f98
Author: Michael Waskom <[email protected]>
Date:   Sat Jul 17 15:44:48 2021 -0400

    Integrate Subplots into Plot

commit 841a3c9
Author: Michael Waskom <[email protected]>
Date:   Sat Jul 17 13:00:09 2021 -0400

    Complete subplots tests

commit 8ceb7e6
Author: Michael Waskom <[email protected]>
Date:   Fri Jul 16 19:45:29 2021 -0400

    Continue building out subplot tests

commit b0ce0e7
Author: Michael Waskom <[email protected]>
Date:   Thu Jul 15 21:35:21 2021 -0400

    Continue building out subplots tests

commit 5f4b67d
Author: Michael Waskom <[email protected]>
Date:   Wed Jul 14 20:57:35 2021 -0400

    Add some tests for Subplots functionality

commit 58fbf8e
Author: Michael Waskom <[email protected]>
Date:   Sun Jul 11 20:49:29 2021 -0400

    Begin refactoring figure setup into Subplots class

commit 6bb853e
Author: Michael Waskom <[email protected]>
Date:   Sun Jul 11 16:02:26 2021 -0400

    Fix overlooked lint and test
Squashed commit of the following:

commit d03e6a5d8bf078df32d52035b504d6ff44f0036f
Author: Michael Waskom <[email protected]>
Date:   Sun Aug 22 18:08:36 2021 -0400

    Matplotlib/pandas norm backcompat in test

commit d115f7c1e780bec8b2ddc0a5834f47567bdfaa43
Author: Michael Waskom <[email protected]>
Date:   Sun Aug 22 18:08:25 2021 -0400

    Simpler workaround for matplotlib scale backcompat

commit dab8b3abb5cb9a8390695560cbdfe8fa6dc0a1e3
Author: Michael Waskom <[email protected]>
Date:   Sun Aug 22 16:45:33 2021 -0400

    Add workaround for uncopiable transforms on matplotlib<3.4

commit d25100241c24640d659a5ec6d2be84445240b461
Author: Michael Waskom <[email protected]>
Date:   Sun Aug 22 16:14:48 2021 -0400

    Add backcompat for matplotlib scale factory

commit 6c166644e6cba14b3a0bf696c8bee52b596470d1
Author: Michael Waskom <[email protected]>
Date:   Sun Aug 22 15:49:19 2021 -0400

    Update minimally supported dependency versions

commit 657739b2137fbc4353374db1bb5ac5bc9ee8da40
Author: Michael Waskom <[email protected]>
Date:   Sun Aug 22 15:46:56 2021 -0400

    Add backcompat layer for ax.set_{xy}scale(scale_obj)

commit 8863dd0f2d454a215d17b0daa9e6c287a3a5d792
Author: Michael Waskom <[email protected]>
Date:   Sun Aug 22 15:45:52 2021 -0400

    Add backcompat layer for GridSpec.n{col,row}s
Squashed commit of the following:

commit df5382c
Author: Michael Waskom <[email protected]>
Date:   Tue Aug 31 20:38:06 2021 -0400

    Add tests for Plot.on input validation

commit 4646ae1
Author: Michael Waskom <[email protected]>
Date:   Tue Aug 31 09:10:25 2021 -0400

    Add basic tests

commit 0e63174
Author: Michael Waskom <[email protected]>
Date:   Tue Aug 31 07:00:43 2021 -0400

    Avoid direct import of SubFigure for mpl compatibility

commit 878c213
Author: Michael Waskom <[email protected]>
Date:   Mon Aug 30 20:56:28 2021 -0400

    Update CI kickoff rules

commit 734ea60
Author: Michael Waskom <[email protected]>
Date:   Mon Aug 30 20:52:12 2021 -0400

    Reorganize code and make compatible with mpl<3.4

commit 55a0d34
Author: Michael Waskom <[email protected]>
Date:   Sun Aug 29 22:39:50 2021 -0400

    Partly functional prototype of Plot.on

commit 09f2ad6
Author: Michael Waskom <[email protected]>
Date:   Sun Aug 29 18:32:08 2021 -0400

    Fix typing issue and elaborate some comments
Squashed commit of the following:

commit 597cd89
Author: Michael Waskom <[email protected]>
Date:   Sat Oct 16 15:50:15 2021 -0400

    Satisfy linter

commit f62d874
Author: Michael Waskom <[email protected]>
Date:   Sat Oct 16 14:12:45 2021 -0400

    Simplify color transform and tests

commit 42020a0
Author: Michael Waskom <[email protected]>
Date:   Sat Oct 16 12:42:32 2021 -0400

    Initialize default semantics with relevant variable names

commit c7777d9
Author: Michael Waskom <[email protected]>
Date:   Tue Oct 12 20:34:03 2021 -0400

    Make scale a required parameter of mapping setup

commit 81482fd
Author: Michael Waskom <[email protected]>
Date:   Mon Oct 11 21:32:01 2021 -0400

    Add from_inferred_type alternate constructor for ScaleWrapper

commit c3ea2a8
Author: Michael Waskom <[email protected]>
Date:   Sun Oct 10 20:13:50 2021 -0400

    Add basic datetime mapping tests

commit b32633c
Author: Michael Waskom <[email protected]>
Date:   Sat Oct 9 17:59:53 2021 -0400

    Very messy prototype of mapping datetime data

commit 8c51ab7
Author: Michael Waskom <[email protected]>
Date:   Sat Oct 9 13:47:46 2021 -0400

    Use linestyle rather than dash

commit 6cb5470
Author: Michael Waskom <[email protected]>
Date:   Sat Oct 9 13:39:25 2021 -0400

    Clear out some TODOs

commit 636f868
Author: Michael Waskom <[email protected]>
Date:   Fri Oct 8 20:08:24 2021 -0400

    Matplotlib compatability

commit 30eadfb
Author: Michael Waskom <[email protected]>
Date:   Fri Oct 8 20:00:52 2021 -0400

    Move norm->rgb transform into class and fix typing

commit 58660ff
Author: Michael Waskom <[email protected]>
Date:   Thu Oct 7 20:59:01 2021 -0400

    Build out continuous semantic tests

commit 72f60d7
Author: Michael Waskom <[email protected]>
Date:   Tue Oct 5 20:47:05 2021 -0400

    Start building out boolean and continuous mapping tests

commit a8408ab
Author: Michael Waskom <[email protected]>
Date:   Mon Oct 4 20:57:11 2021 -0400

    Add abstraction in discrete semantic tests

commit 966218f
Author: Michael Waskom <[email protected]>
Date:   Mon Oct 4 20:37:31 2021 -0400

    Name bikeshedding

commit 7e4a62b
Author: Michael Waskom <[email protected]>
Date:   Mon Oct 4 20:30:22 2021 -0400

    Move default semantics out of Plot

commit 5172936
Author: Michael Waskom <[email protected]>
Date:   Sun Oct 3 22:23:21 2021 -0400

    Add linewidth to prototype out continuous semantic

commit fc8f466
Author: Michael Waskom <[email protected]>
Date:   Sun Oct 3 17:33:28 2021 -0400

    Attempt (unsuccessfully) to clean up Point draw logic

commit af8d377
Author: Michael Waskom <[email protected]>
Date:   Thu Sep 30 21:19:35 2021 -0400

    Fix base attribute typing on Semantic.variable

commit d861fda
Author: Michael Waskom <[email protected]>
Date:   Thu Sep 30 20:44:40 2021 -0400

    Change test for too-short palette reaction to warning

commit 4761b09
Author: Michael Waskom <[email protected]>
Date:   Wed Sep 29 20:54:21 2021 -0400

    Add prototype of ContinuousSemantic

commit 8519b5b
Author: Michael Waskom <[email protected]>
Date:   Tue Sep 28 20:51:11 2021 -0400

    Spec out a BooleanSemantic

commit 83604c6
Author: Michael Waskom <[email protected]>
Date:   Tue Sep 28 19:21:47 2021 -0400

    Fix more complex positional variables

commit cc8f73a
Author: Michael Waskom <[email protected]>
Date:   Tue Sep 28 08:20:10 2021 -0400

    Clear mypy failures

commit 8282870
Author: Michael Waskom <[email protected]>
Date:   Mon Sep 27 07:01:19 2021 -0400

    MPL compat

commit 0b69940
Author: Michael Waskom <[email protected]>
Date:   Sun Sep 26 22:42:02 2021 -0400

    PEP8

commit a7bfca2
Author: Michael Waskom <[email protected]>
Date:   Sun Sep 26 22:24:25 2021 -0400

    Add numeric ColorMapping

commit 0611614
Author: Michael Waskom <[email protected]>
Date:   Sun Sep 26 20:17:54 2021 -0400

    Rename objects in mapping tests

commit aa8bbd5
Author: Michael Waskom <[email protected]>
Date:   Sun Sep 26 20:15:09 2021 -0400

    Remove vestigial code

commit b527b57
Author: Michael Waskom <[email protected]>
Date:   Sun Sep 26 17:53:03 2021 -0400

    Have map_ methods call scale_ method when appropriate

commit a8194b4
Author: Michael Waskom <[email protected]>
Date:   Sun Sep 26 14:43:27 2021 -0400

    Begin exposing order in map methods

commit 708391b
Author: Michael Waskom <[email protected]>
Date:   Sun Sep 26 14:27:05 2021 -0400

    More consistency in argument order

commit e0be5ff
Author: Michael Waskom <[email protected]>
Date:   Sun Sep 26 12:41:05 2021 -0400

    Partial fix to scale transformation logic

commit b706c89
Author: Michael Waskom <[email protected]>
Date:   Sun Sep 26 08:26:32 2021 -0400

    Make it optional to have x/y scale defined

commit 7e758f8
Author: Michael Waskom <[email protected]>
Date:   Sat Sep 25 20:42:02 2021 -0400

    Refactor _setup_mappings

commit 42b2481
Author: Michael Waskom <[email protected]>
Date:   Sat Sep 25 20:21:32 2021 -0400

    Begin refactoring setup pipeline

commit edf2729
Author: Michael Waskom <[email protected]>
Date:   Thu Sep 23 21:02:51 2021 -0400

    Partial rearrangement of mapping code into new organization

commit 7417eb7
Author: Michael Waskom <[email protected]>
Date:   Mon Sep 20 19:36:39 2021 -0400

    Consistent sorting of missing keys

commit a179cdc
Author: Michael Waskom <[email protected]>
Date:   Mon Sep 20 19:36:31 2021 -0400

    Add compat layer for MarkerStyle

commit 917600d
Author: Michael Waskom <[email protected]>
Date:   Sun Sep 19 20:52:12 2021 -0400

    Add tests for MarkerMapping and DashMapping

commit 4ece963
Author: Michael Waskom <[email protected]>
Date:   Mon Sep 13 20:51:16 2021 -0400

    Refactor DictionaryMapping and add DashMapping

commit 0bf214d
Author: Michael Waskom <[email protected]>
Date:   Sun Sep 12 18:51:13 2021 -0400

    Add (untested/incomplete) prototype of marker mapping

commit 4ef6d61
Author: Michael Waskom <[email protected]>
Date:   Sat Sep 11 21:18:46 2021 -0400

    Rename 'hue' -> 'color' in the rest of the new code

commit d357b3f
Author: Michael Waskom <[email protected]>
Date:   Sat Sep 11 19:01:41 2021 -0400

    Add facecolor and edgecolor mappings

commit 8e87e28
Author: Michael Waskom <[email protected]>
Date:   Sat Sep 11 18:07:54 2021 -0400

    Rename hue -> color in semantic mapping code
@mwaskom mwaskom added this to the v0.12.0 milestone May 16, 2022
@codecov
Copy link

codecov bot commented May 16, 2022

Codecov Report

Merging #2810 (4033caf) into master (04bce13) will increase coverage by 0.53%.
The diff coverage is 96.67%.

@@            Coverage Diff             @@
##           master    #2810      +/-   ##
==========================================
+ Coverage   97.42%   97.96%   +0.53%     
==========================================
  Files          17       67      +50     
  Lines        6417    21719   +15302     
==========================================
+ Hits         6252    21276   +15024     
- Misses        165      443     +278     
Impacted Files Coverage Δ
seaborn/_oldcore.py 98.06% <ø> (ø)
seaborn/_compat.py 28.37% <28.37%> (ø)
seaborn/_marks/basic.py 61.90% <61.90%> (ø)
seaborn/tests/_marks/test_bars.py 81.17% <81.17%> (ø)
seaborn/_core/scales.py 86.81% <86.81%> (ø)
seaborn/_stats/base.py 88.88% <88.88%> (ø)
seaborn/_stats/aggregation.py 92.00% <92.00%> (ø)
seaborn/_core/plot.py 95.09% <95.09%> (ø)
seaborn/_stats/regression.py 95.65% <95.65%> (ø)
seaborn/_marks/area.py 96.61% <96.61%> (ø)
... and 56 more

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 04bce13...4033caf. Read the comment docs.

@mwaskom mwaskom merged commit 0550195 into master May 16, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant