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

Include normalizations as matplotlib scale #68

Open
grst opened this issue May 7, 2024 · 4 comments
Open

Include normalizations as matplotlib scale #68

grst opened this issue May 7, 2024 · 4 comments

Comments

@grst
Copy link
Collaborator

grst commented May 7, 2024

I like how CytoPy includes matplotlib scales for the different normalizations that make the axes look like in e.g. FlowJo. I.e. instead of plotting normalized values, the raw valuese are plotted, but the axis scales are adjusted accordingly:
image

There are implementations for this by @burtonrj in https://github.com/burtonrj/CytoPlots/tree/main/cytoplots/transforms

@mbuttner @quentinblampey, what do you think of this approach?

@mbuttner
Copy link
Collaborator

mbuttner commented May 7, 2024

Oh, I like those plots with rescaled axes, too. If @burtonrj agrees, I would be delighted to include them in pytometry.

@burtonrj
Copy link
Collaborator

burtonrj commented May 7, 2024

I would be delighted to see them in pyrometry! Also happy to help contribute with getting them into the package.

Is there a consensus yet on how to handle basic transformations such as logicle and arcsinh transform. The latter is easy to do on numpy but the former will need C bindings. Might be best to just use @whitews flowutils package here but I also have a cytotransforms package that might help.

@burtonrj
Copy link
Collaborator

burtonrj commented May 7, 2024

I think @whitews has mentioned this before, but we might also want to consider upfront if GatingML standards will be followed for 2D plots and transforms.

@quentinblampey
Copy link
Contributor

I also like these plots! One small note: if normalization has already been performed (and raw data stored in a specific layer), then we could automatically choose the scale of the plot according to the transformation that was used. This way, we don't need to tell the type of scale that we want to use for each plot

In #65, we talked about storing the normalization parameters in adata.uns

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants