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.5.1.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.5.1-py3-none-any.whl (69.7 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: calcite-0.4.5.1.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.5.1.tar.gz
Algorithm Hash digest
SHA256 c73d3ecfa97f450f5cbd48599cfdccd20ec1c25a5064dfdde2e25cedfada75b9
MD5 85b1b269bdaa4a88bcae3351964c8643
BLAKE2b-256 925e8bb43b4d0c51564e5bb1cf94cf5928adabc6681e4858abfc92a73b657fe9

See more details on using hashes here.

File details

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

File metadata

  • Download URL: calcite-0.4.5.1-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.5.1-py3-none-any.whl
Algorithm Hash digest
SHA256 82453b755e5afd8712468d69c9ef6fef74cd4dac650d19013cb7304f238e049e
MD5 db6b715a23e63673217f820105a57710
BLAKE2b-256 cfa4039a9474db4424d1b797eecb829723cec0b4eea68e9e13fd470685f43b9f

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