Skip to main content

Python package making it easier to handle mixed 3d and 2d subplots.

Project description

Travis CI build SonarCloud Quality SonarCloud Maintainability Codacy Maintainability Maintainability Pypi project Pypi total project downloads

Python package making it easier to handle mixed 3d and 2d subplots.

How do I install this package?

As usual, just download it using pip:

pip install ddd_subplots

Tests Coverage

Since some software handling coverages sometime get slightly different results, here’s three of them:

Coveralls Coverage SonarCloud Coverage Code Climate Coverate

Usage Example

3D subplots

To get a set of 3d subplots just import subplots:

from ddd_subplots import subplots

fig, axes = subplots(1, 3, figsize=(15, 5))

Rotating 3D scatter plots

The library also offers a method to render 3D scatter plots. Here’s a complete example:

from ddd_subplots import subplots, rotate
import numpy as np
from sklearn import datasets
from sklearn.decomposition import PCA

def my_func(xs: np.ndarray, ys: np.ndarray, zs: np.ndarray, *args, **kwargs):
    fig, axes = subplots(1, 3, figsize=(9, 3))
    axs = axes.flatten()
    axs[0].scatter(xs, ys, zs, **kwargs)
    axs[1].scatter(ys, zs, xs, **kwargs)
    axs[2].scatter(zs, xs, ys, **kwargs)
    return fig, axes

X, y = datasets.load_iris(return_X_y=True)
X_reduced = PCA(n_components=3).fit_transform(X)
colors = np.array(["red", "green", "blue"])[y]
rotate(my_func, *X_reduced.T, path="test.gif",
    duration=2, fps=24, c=colors, marker='o', s=20)


Known limits

There is an error with CoreFoundations and multiprocessing on MacOS, which states the following:

The process has forked and you cannot use this CoreFoundation functionality safely. You MUST exec().

This is a weird known error of MacOS Sierra. For now, the only available solution is to disable multiprocessing when dealing with matplotlib. Any alternative valid solutions are welcome:

rotate(my_func, *X_reduced.T, path="test.gif",
    duration=2, fps=24, parallelize=False, c=colors, marker='o', s=20)

Project details

Download files

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

Files for ddd-subplots, version 1.0.7
Filename, size File type Python version Upload date Hashes
Filename, size ddd_subplots-1.0.7.tar.gz (5.4 kB) File type Source Python version None Upload date Hashes View

Supported by

Pingdom Pingdom Monitoring Google Google Object Storage and Download Analytics Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page