Introduction to python use in geosciences.
Switch branches/tags
Nothing to show
Clone or download
Latest commit de0d84f Oct 30, 2017

Python for Geosciences

You can run this notebooks interactevellu on Binder

This is a short overview of how Python is used in science and particularly in geosciences. The idea is to show how to setup Python for purposes of scientific computation and visualization, cover some basic features of the language and show some of the real world applications such as:

  • Array manipulations.
  • I/O (binary, txt, netCDF, mat).
  • Creation of maps and graphics.
  • Time series analysis.

This overview is aimed at the scientists who are interested in Python but don't know how to start using it (this might be really confusing for a newcomer), or would like to learn more about possible Python applications. For those of you who already use Python there will be nothing really new.

This notes will be helpful only if you know some programming language already (preferably Matlab). Notes are also avalible as webpages at

PRs with corrections are very welcomed.

Getting started for Linux/Mac

The fastest way is to install Miniconda, that contains conda package manager and Python. On the Miniconda page select Python 3 installer script for your system and download it, for example:


Change mode of the downloaded scrip to executable, e.g.:

chmod +x

Run installation process:


At the end the script will offer you to add Miniconda3 install location to the PATH in your .bashrc/.bash_profile. You should say 'yes'. Please double check that you have something like this in your .bashrc/.bash_profile:

# added by Miniconda3 4.3.21 installer
export PATH="/Users/koldunovn/miniconda3/bin:$PATH"

If you for whatever strange reason use csh/tcsh, then add to your .cshrc:

setenv PATH /Users/koldunovn/miniconda3/bin:$PATH

Now you can open a new terminal window (sourcing not always works) and try to type:


if as a result you see conda help, then everything is set up properly. The last thing before installing packages is to add conda-forge channel:

conda config --add channels conda-forge 

Now you can install nessesary packages:

conda install ipython jupyter matplotlib scipy pandas basemap netcdf4

To begin working with notebooks execute:

jupyter notebook

the browser should pop up with jupyter main page. You can navigate to the folder with notebooks from there and open them.

Getting started for Windows

  • First you have to download and install Anaconda python distribution for your system from here. If installation is sucessful, you will be able to work with notebooks from 02 to 07. In order to work with netCDF files and Basemap some additional steps are required.

  • Go to start menu, choose run and execute cmd in order to bring up windows command line.

  • Change to Anaconda\Scripts directory by executing cd Anaconda\Scripts

  • execute conda install netcdf4 basemap and agree with installation

Links to nbviewer versions

00 Why python?

01 Scientific modules and IPython

02 Python basics

03 NumPy arrays

04 Work with different data formats

05 Graphs and maps (Matplotlib and Basemap)

06 Time series analysis (Pandas)

07 Other modules for geoscientists and collection of links



Nikolay Koldunov