Skip to main content
`Ctrl`+`K`

# `ndcube` documentation

`ndcube` is a SunPy Project affiliated package designed for handling N-dimensional data cubes described by WCS (World Coordinate System) transformations.

The side bar on the left contains links to the various sections of the documentation.

## Getting help

If you are unsure of the general features of the `ndcube` package, your first stop should be this document which we strive to make as comprehensive, yet understandable, as possible. If you would like to know more about how to use a specific function, class, etc., documentation for each object is in the API Reference of this guide. If you cannot find the answer to your issue there, would like to provide feedback, or would like help contributing code to `ndcube`, you can get help directly from the `ndcube` team in a number of ways.

### Live Chat

`ndcube` has a matrix channel which will open directly in your browser. You will need to register in order to comment but in there are many `sunpy` and `ndcube` users and developers, who will be happy to help.

We could always use more voices and opinions in the discussions about `ndcube` and its development from both users and developers. There are a number of ways to make your voice heard. Whether it be constructive criticism, inquiries about current or future capabilities, or flattering praise, we would love to hear from you.

### Reporting bugs

If you run into unexpected behavior or a bug please report it. All bugs are raised and stored on our issue tracker. If you are not sure if your problem is a bug, you can either send a message to the chat room or open an issue. Ideally, we would like a short code example so we can run into the bug on our own machines.

### Using `ndcube` in your project

The `ndcube` package has been built to be used directly, or where needed extended in your own package. Read more about Extending ndcube in Other Packages. Please come tell us about what you build with ndcube to help make it better for everyone.

## Contributing to `ndcube`

We are always enthusiastic to welcome new users and developers who want to enhance the ndcube package. You can contribute in several ways, from providing feedback, reporting bugs, contributing code, and reviewing pull requests. There is a role for almost any level of engagement.

If you would like to contribute code, it is strongly recommended that you first discuss your aims with the ndcube community. We strive to be an open and welcoming community for developers of all experience levels. Discussing your ideas before you start can give you new insights that will make your development easier, lead to a better end product, and reduce the chances of your work being regretfully rejected because of an issue you weren’t aware of, e.g. the functionality already exists elsewhere.

The best guide we provide comes from the sunpy newcomers guide. The only thing you will need to change is “sunpy” to “ndcube” e.g.,

    https://github.com/<username>/sunpy.git sunpy-git

to

    https://github.com/<username>/ndcube.git ndcube-git

where appropriate.