Skip to main content

A desktop application for data analysis and publication-quality graphing.

Project description

Calcite

Calcite is a desktop application designed for scientists, researchers, and students who need to perform data analysis and create publication-quality graphs without writing code. It provides a seamless workflow from data import to final plot export, all within a single, user-friendly interface.

日本語のREADMEはこちら (Japanese README here)

✨ Features

Intuitive Data Handling

  • Versatile Import: Import data from CSV files or paste directly from spreadsheets (e.g., Excel) via the clipboard.
  • Python Integration: Launch the application seamlessly from existing analysis environments by passing a pandas.DataFrame as a direct argument.
  • Interactive Table:
    • Sort data in ascending/descending order with a single click or edit column names with a double click.
    • Export the current state of the data (after filtering or sorting) to a new CSV file.
  • Advanced Data Manipulation:
    • Reshaping: Easily convert data between wide and long formats using a graphical interface.
    • Filtering: A powerful and advanced filtering tool allows for combining multiple conditions using AND/OR logic.
    • Column Calculation: Dynamically create new columns using formulas like 'ColumnA' * 100.

Publication-Quality Graphing

  • Variety of Plot Types: Supports a wide range of plots, including Scatter, Bar, Box, Violin, Point, Line, and Paired Scatter plots.
  • Extensive Customization:
    • Fine-tune every aspect of your plot from the GUI, including colors, markers, line styles, font sizes, axis ranges, and log scales.
    • Apply a "Prism-style" aesthetic by removing the top and right spines of the graph.
    • Overlay individual data points on summary plots like bar charts and box plots.

Comprehensive Statistical Analysis

  • Basic Tests: Independent & Paired t-tests, Mann-Whitney U, Wilcoxon signed-rank.
  • Group Comparisons: One-way ANOVA & Kruskal-Wallis with post-hoc tests (Tukey, Dunn).
  • Regression: Linear and non-linear (4-parameter logistic, 4PL) regression, with R² values displayed on the graph.
  • Correlations & Associations: Spearman's correlation and Chi-squared tests.
  • Automatic Annotations: Automatically adds statistical significance (*) to your plots based on the robust logic of the statannotations library.

e.g. e.g. Owe way anova

High-Resolution Export

  • Save your graphs as PNG, JPEG, SVG, or PDF at 300 DPI, ready for any publication or presentation.

🛠️ Installation

This project is currently under development. The installation method is as follows. Python 3.10 or higher is required.

pip install calcite

🚀 Quick Start

  1. Launch Calcite from your terminal:

    calcite
    

    or

    import pandas as pd
    from calcite.main import plot
    
    data = {
        'Category': ['A', 'A', 'B', 'B'],
        'Value': [10, 12, 15, 17]
    }
    df = pd.DataFrame(data)
    # -----------------------------
    
    plot(data=df)
    
  2. Import data using File > Open CSV... or paste from your clipboard using Edit > Paste.

    • 💡 Tidy Data format (=Long-form) is recommended
    • Calcite is designed around the principles of Tidy Data. This is a data structure where:
      • Each variable forms a column (e.g., "Genotype", "Concentration", "Measurement").
      • Each observation forms a row.
      • Each type of observational unit forms a table.
    • This format is the most suitable for statistical analysis and graphing on a computer. If your data is in a "wide" format (e.g., separate columns for Control Group, Drug A Group, etc.), you can easily convert it to Tidy Data using Calcite's Data > Restructure (Wide to Long)... feature.

    Tidy data (Ref. Seaborn) (https://seaborn.pydata.org/tutorial/data_structure.html) Tidy data

  3. Select a graph type from the toolbar (e.g., Scatter Plot, Bar Chart).

  4. In the "Data" tab at the bottom right, select the columns for the X and Y axes.

  5. Customize the graph's appearance using the "Format," "Text & Legend," and "Axis" tabs.

  6. Perform statistical analysis from the "Analysis" menu.

  7. Save your graph using File > Save Graph As....

📄 License

This project is licensed under the MIT License. See the LICENSE file for details.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

calcite-0.4.4.tar.gz (96.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

calcite-0.4.4-py3-none-any.whl (69.7 kB view details)

Uploaded Python 3

File details

Details for the file calcite-0.4.4.tar.gz.

File metadata

  • Download URL: calcite-0.4.4.tar.gz
  • Upload date:
  • Size: 96.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.7

File hashes

Hashes for calcite-0.4.4.tar.gz
Algorithm Hash digest
SHA256 df46766f1feb2a20430de254a7b2dc5e123d719b9ba49e393065a728383497f8
MD5 a74cd33f24897ed37a9cab8cd2204012
BLAKE2b-256 d464ce4eb47bf1d272670f736747aa9d521777b62139e61bf92fe09d817bbf30

See more details on using hashes here.

File details

Details for the file calcite-0.4.4-py3-none-any.whl.

File metadata

  • Download URL: calcite-0.4.4-py3-none-any.whl
  • Upload date:
  • Size: 69.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.7

File hashes

Hashes for calcite-0.4.4-py3-none-any.whl
Algorithm Hash digest
SHA256 098e08d8e5b4c0fda922d2cbbfb86b8d354aac6f8f04728126d2aad62670661b
MD5 557bcbcd3e62cfbfed0acb6454b35d6d
BLAKE2b-256 f5d077a485e3b84e0caa3931ac7dbf3b968b55bc645198315cc2fcd3bbad3f42

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page