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

Redesign aesthetics interface (possibly tidyeval) #26

Open
lazappi opened this issue Feb 17, 2019 · 1 comment
Open

Redesign aesthetics interface (possibly tidyeval) #26

lazappi opened this issue Feb 17, 2019 · 1 comment
Labels
enhancement New feature or request
Milestone

Comments

@lazappi
Copy link
Owner

lazappi commented Feb 17, 2019

The current interface for defining aesthetics using metadata columns requires a string giving the name of the column (e.g. node_AES) and a string giving the name of a function to summarise samples in each cluster (e.g. node_AES_aggr). This approach has the following limitations:

  • Can't use anonymous functions (e.g. node_colour_aggr = function(x) {...}) (doing this has other issues around naming)
  • Only one column can be used for each aesthetic
  • Can't set other arguments in functions
  • Many function arguments, need (at least) two for each aesthetic

How could we address some of these issues?

  • Use tidyeval
    • Use non-standard evaluation, e.g. names instead of strings
  • Specify aesthetics using a list
    • aes = list(node_colour = list(func = mean, x = colA), ...)
  • Directly pass ggplot aes

Possible issues to consider:

  • Allowing static aesthetics (e.g. `node_colour = "red")
  • Checking function arguments exist
  • Summarise columns
  • Naming
@lazappi lazappi added the enhancement New feature or request label Feb 17, 2019
@lazappi lazappi added this to the Version 1.0.0 milestone Feb 17, 2019
@lazappi
Copy link
Owner Author

lazappi commented May 21, 2019

Allow direct passing of summarised node statistics for aesthetics, possible via a node_metadata argument. See #31 for example.

@lazappi lazappi added this to Redesign in clustree v1.0.0 Dec 28, 2020
@lazappi lazappi moved this from Redesign to In Progress in clustree v1.0.0 Jan 5, 2021
@lazappi lazappi moved this from In Progress to Done in clustree v1.0.0 Apr 14, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
Development

No branches or pull requests

1 participant