Git Product home page Git Product logo

ndcube's Introduction

ndcube

Latest Version Build Status Build status codecov Powered by NumFOCUS Powered by Sunpy

ndcube is an open-source SunPy affiliated package for manipulating, inspecting and visualizing multi-dimensional contiguous and non-contiguous coordinate-aware data arrays. It combines data, uncertainties, units, metadata, masking, and coordinate transformations into classes with unified slicing and generic coordinate transformations and plotting/animation capabilities. It is designed to handle data of any number of dimensions and axis types (e.g. spatial, temporal, spectral, etc.) whose relationship between the array elements and the real world can be described by World Coordinate System (WCS) translations. See the ndcube docs for more details.

Installation

ndcube requires Python 3.5+, SunPy 0.8+, astropy and matplotlib.

Stable Version

There are two options for installing the stable version of ndcube. The first is via the anaconda distribution using the conda-forge channel:

$ conda install --channel conda-forge ndcube

For more information on installing the anaconda distribution, see the anaconda website.

To update ndcube do:

$ conda update ndcube

The second option for installing the stable verison of ndcube is via pip:

$ pip install ndcube

Then to update ndcube do:

$ pip install ndcube --upgrade

Development Version

The stable version of ndcube will be relatively reliable. However, if you value getting the latest updates immediately over reliablility, or want to contribute to the development of ndcube, you will need to install the bleeding edge version via github. The recommended way to set up your system is to first fork the ndcube github repository to your github account and then clone your forked repo to your local machine. This setup has the advantage of being able to push any changes you make in local version to your github account. From there you can issue pull requests to have your changes merged into the main repo and thus shared with other users. You can also set up a remote between your local version and the main repo so that you can stay updated with the latest changes to ndcube. Let's step through how to do this.

Once you've forked the main ndcube github repository to your github account, create a conda environment on your local machine to hold the ndcube bleeding edge version and activate that environment. Type the following into a terminal:

$ conda config --append channels conda-forge
$ conda create -n ndcube-dev python sunpy hypothesis pytest-mock
$ source activate ndcube-dev

Next clone the ndcube repo from your github account to a new directory. Let's call it ndcude-git:

$ git clone https://github.com/your-github-name/ndcube.git ndcube-git

To install, change into the new directory and run the install script:

$ cd ndcube-git
$ pip install -e .

Finally add a remote to the main repo so you can pull the latest version:

$ git remote add upstream https://github.com/sunpy/ndcube.git

Then to ensure you stay up-to-date with the latest version of ndcube, regularly do:

$ git pull upstream master

To push any changes you make to your github account by doing:

$ git push origin branch-name

where branch-name is the name of the branch you're working on. Then from your github account you can request your changes to be merged to the main repo. For more information on on git version control, github, and issuing pull requests, see SunPy's version control guide.

Getting Help

As a SunPy-affiliated package, ndcube relies on the SunPy support infrastructure. To pose questions to ndcube and SunPy developers and to get annoucements regarding ndcube and SunPy in general, sign up to the

To get quicker feedback and chat directly to ndcube and SunPy developers check out the

Contributing

If you would like to get involved, start by joining the SunPy mailing list and check out the Developer’s Guide section of the SunPy docs. Stop by our chat room #sunpy:matrix.org if you have any questions. Help is always welcome so let us know what you like to work on, or check out the issues page for the list of known outstanding items.

For more information on contributing to ncdube or the SunPy organization, please read the SunPy contributing guide.

Code of Conduct

When you are interacting with the SunPy community you are asked to follow our Code of Conduct.

License

This project is Copyright (c) SunPy Developers and licensed under the terms of the BSD 2-Clause license. See the licenses folder for more information.

ndcube's People

Contributors

abit2 avatar aoife-maria avatar baptistepellorceastro avatar byrdie avatar cadair avatar danryanirish avatar mateoi avatar nabobalis avatar shelbej avatar solardrew avatar

Watchers

 avatar  avatar

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.