Git Product home page Git Product logo

blendplot's Introduction

Blendplot Travis CI Status Coverage Status Documentation Status PyPI version

Blendplot is a command line application for generating 3D data plots for use in Blender.

$ blendplot abc.csv abc.obj period amplitude_Iband magnitude_Iband -c category 
Wrote plot file to abc.obj
Plotted 37099 points in 1.531214 seconds

An example of a model generated with Blendplot using data from the OGLE IV lmc survey

Installation

From PyPI

pip install blendplot

From source

To install Blendplot from source you can run the following commands.

git clone https://github.com/ExcaliburZero/blender-astro-visualization.git
cd blender-astro-visualization
pip install ./

Usage

Blendplot allows you to generate a 3D data plot model by specifying a dataset file, the output model file (.obj), and the names of the three (x,y,z) columns you want to plot. Currently it only supports .csv input data files. The commad structure to run blendplot is as follows.

blendplot INPUT_FILE OUTPUT_FILE X Y Z

For example, to create a model from a data file data.csv using the columns height, weight, and cost and output to a file model.obj you would run the following command.

blendplot data.csv model.obj height weight cost

Once you have used the script to generate the model file, you can then import it into Blender by going to File > Import > Wavefront (.obj) and selecting the model file.

Importing the model file into Blender

Documentation

For futher in-depth information on how to use Blendplot, see the documentation at the link below.

Licensing

The source code for Blendplot is available under the MIT License, see LICENSE for more information.

blendplot's People

Contributors

excaliburzero avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

Forkers

blendercn-org

blendplot's Issues

Install Issue

When attempting to install I get this Error:

error in blendplot setup command: "values of 'package_data' dict" must be a list of strings (got '[LICENSE]')

Able to fix it with this quick change to setup.py:

Change Line 21 from

'': 'LICENSE'

to

'': ['LICENSE']

Not sure if this is the best fix, or something else can solve the problem.

P.S. - this is a really fun, easy to use tool!

Print error message on invalid column

When the user supplies a column either for the (x,y,z) axes or for the category column, then they should be validated against the dataframe created from the data file.

If one or more of the columns are invalid, then the program should print an error message to stderr indicating this and then exit with an error status.

Add flag to specify scaling method

Currently the program uses sklearn's preprocessing.scale function to scale the dataset. There should be a flag that allows the user to specify a different scaling function.

Ideally it should allow for several of the scaling functions supplied by sklearn as well as an option for no scaling at all. Note that the --spacing flag can already be used to do some basic custom scaling.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.