cooplot
Analysis of co-op between members and subgroups.
Example Gallery
Cluster of Excellence – Machine Learning for Science
import cooplot
palette = {
"Life Science": "#61859e",
"Norms": "#e0aa41",
"Human Science": "#5fb4d0",
"ML": "#bc3b2f",
"Physical Science": "#608dd2",
}
_, people = cooplot.load_csv("excelclust.csv", delimiter=";")
pubs = cooplot.scrape(
people,
name_col="name",
scholar_col="scholar_id",
semantic_col="semantic_id",
cache_dir=".cache/excelclust",
)
mats = cooplot.build(pubs, windows=["2014-2018", "2019-2023"], name_col="name", group_col="group")
fig = cooplot.show(mats, group_col="group", style="circle", heatmap_counts=True, palette=palette)
fig.savefig("../.github/excelclust.png", dpi=300)
AG Berens
import cooplot
header, people = cooplot.load_csv("agberens.csv", delimiter=";")
pubs = cooplot.scrape(
people,
name_col="name",
scholar_col="scholar_id",
semantic_col="semantic_id",
cache_dir=".cache/hai",
drop_subtitle=False,
fallback_semantic_if_empty=True, # try Semantic if GS had 0 pubs
)
mats = cooplot.build(pubs, windows=["2016-2025"], name_col="name", group_col="group")
fig = cooplot.show(mats, group_col="group", style="both", heatmap_counts=True, figsize=(18,10))
You can also generate a list of reference highlighting the cross-group collaboration:
groups = cooplot.aggregate(pubs, name_col="name", cache_dir=".cache/agberens-group")
_ = cooplot.cross_group_publications(groups, year_from=2016, year_to=2025, out_path=".cache/agberens-coop.csv", enrich_crossref=True)
cooplot.cross_group_report(".cache/agberens-coop.csv", out_path=".cache/agberens-coop-ref.txt", verbose=True)
which will give you
...
Schmors, L., Kotkat, A. H., Bauer, Y., Huang, Z., Crombie, D., Meyerolbersleben, L. S., Sokoloski, S., Berens, P., & Busse, L. (2025). Effects of corticothalamic feedback depend on visual responsiveness and stimulus type. IScience, 28(6), 112481. https://doi.org/10.1016/j.isci.2025.112481
Collaboration: All (Philipp Berens, Ziwei Huang) and Neural (Lisa Schmors, Sacha Sokoloski).
Gervelmeyer, J., Müller, S., Huang, Z., & Berens, P. (2025). Fundus Image Toolbox: A Python package for fundus image processing. Journal of Open Source Software, 10(108), 7101. https://doi.org/10.21105/joss.07101
Collaboration: All (Philipp Berens, Ziwei Huang) and MedML (Julius Gervelmeyer, Sarah Müller).
Schmidt, G., Heidrich, H., Berens, P., & Müller, S. (2025). Learning Disease State from Noisy Ordinal Disease Progression Labels. Medical Image Computing and Computer Assisted Intervention – MICCAI 2025, 284–293. https://doi.org/10.1007/978-3-032-04971-1_27
Collaboration: All (Philipp Berens) and MedML (Sarah Müller).
Ofosu Mensah, S., Djoumessi, K., & Berens, P. (2025). Prototype-Guided and Lightweight Adapters for Inherent Interpretation and Generalisation in Federated Learning. Medical Image Computing and Computer Assisted Intervention – MICCAI 2025, 464–473. https://doi.org/10.1007/978-3-032-04981-0_44
Collaboration: All (Philipp Berens) and MedML (Kerol Djoumessi, Samuel Ofosu Mensah).
Oesterle, J., Ran, Y., Stahr, P., Kerr, J. N. D., Schubert, T., Berens, P., & Euler, T. (2025). Task-specific regional circuit adaptations in distinct mouse retinal ganglion cells. Science Advances, 11(17). https://doi.org/10.1126/sciadv.adp7075
Collaboration: All (Philipp Berens) and Neural (Jonathan Oesterle).
Installation
uv pip install cooplot
or
git clone git@github.com:berenslab/cooplot.git
cd cooplot
uv pip install -e ".[dev]"
Usage
See the example notebook for a complete usage example.
Metadata
Release files for cooplot 0.1.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| cooplot-0.1.2.tar.gz | 5.1 MB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| cooplot-0.1.2-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 5.2 MB
Release files / cooplot-0.1.2.tar.gz
| Download URL | cooplot-0.1.2.tar.gz |
|---|---|
| Size | 5.1 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
4d9b911c8ce52516fc8915838160e3847c813e5ec814173b3daf445fe6f02722
|
|
BLAKE2b-256 checksum How to use checksums |
49dac17fbeb9ca2e4038830e05af23a8577f1daa298eb2736dcf71819b15f452
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on May 21, 2026.
Transparency logRelease files / cooplot-0.1.2-py3-none-any.whl
| Download URL | cooplot-0.1.2-py3-none-any.whl |
|---|---|
| Size | 36.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
f1e4443e9521349d2039f17e7ef83aaadc483e73202e5ab293dde49dac540648
|
|
BLAKE2b-256 checksum How to use checksums |
ee29f865a50857174c53b899860598c0757bfb81ca58a9fd681bb95609a4d5e0
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on May 21, 2026.
Transparency log