Python library to visualize data in Virtual and Extended Reality using Aframe components.
Project description
AFrameXR 
AFrameXR is a declarative Python library for building immersive 3D and XR data visualizations — directly in your browser, with no 3D experience required.
Inspired by Vega-Altair and Vega-Lite, AFrameXR lets you define interactive 3D charts using a simple grammar, and render them directly in the browsers and XR devices — without low-level 3D programming.
Live Demo
Features
- Declarative API — Define charts using a high-level grammar
- XR Visualization — Explore charts in immersive environments
- Notebook Integration — Works with Jupyter and Marimo
- Browser Rendering — Visualize charts directly in the browser
- Interactive Exploration — Navigate and interact with your data
Why AFrameXR?
AFrameXR brings the declarative visualization paradigm to 3D and XR environments.
- No need to learn complex 3D engines
- Inspired by proven visualization tools like Vega-Lite
- Built for the web and XR from the ground up
- Clean and concise API for rapid prototyping
Installation
pip install aframexr
Simple example
import aframexr
from aframexr.datasets import data
# Load dataset
cars = data.cars()
# Create a 3D chart
aframexr.Chart(
cars,
position="0 2 -5"
).mark_bar().encode(
x="model",
y="sales",
z="doors:N", # :N indicates a categorical (nominal) field
color="motor"
)
Supported Environments
- Jupyter Notebook
- Marimo Notebooks
- Modern web browsers (Chrome, Firefox)
- XR devices
Documentation
Full documentation: https://davidlab20.github.io/TFG/
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file aframexr-0.10.2.tar.gz.
File metadata
- Download URL: aframexr-0.10.2.tar.gz
- Upload date:
- Size: 46.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.10.4 {"installer":{"name":"uv","version":"0.10.4","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2d805c077cdf59c6de18f0995acb857f54c928f041e468902a00efc24bc6a906
|
|
| MD5 |
fe035615cac5d13892f906e3105b93da
|
|
| BLAKE2b-256 |
b6ee48defb6f64ae4eafaf32af91725d30fed06c94896525189df47a17f7884b
|
File details
Details for the file aframexr-0.10.2-py3-none-any.whl.
File metadata
- Download URL: aframexr-0.10.2-py3-none-any.whl
- Upload date:
- Size: 36.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.10.4 {"installer":{"name":"uv","version":"0.10.4","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ffbce9bca0f9da76ef69931ef4367a9a9350d602656e699833b04d4717b9cc1d
|
|
| MD5 |
f31024fa64f826b104071a6c1e948d8b
|
|
| BLAKE2b-256 |
e54de182818afcdcd9acad8ef50d4c5f2e0e677140ebd06c141e021420138e3a
|