Which IDE for scientific computing and plotting in Python? [closed] Which IDE for scientific computing and plotting in Python? [closed] python python

Which IDE for scientific computing and plotting in Python? [closed]


I strongly suggest that you install a complete scientific python distribution such as Anaconda or Enthought Python which contains all the packages you need for science (numpy, scipy, matplotlib, numba, pandas, etc.)

For scientific computing, the de-facto standard is to use IPython instead of python. It is a improved python interpreter, with batteries includes (indentation, completion, history, HPC, etc.).

For you IDE, Matlab-like, you have basically one choice: Spyder (which as a basic git support). The other IDE are nicers but they lack the tools for inspecting datasets. Spyder directly runs an IPython session which can be edited later on with other tools.

Another one IPython notebook (now known as Jupyter) which is a new and very powerful tool especially if you want to document your code with Latex code. Your IPython session is embedded and directly transferable to others, easily versionable.

You can also run an interactive presentation directly within the notebook, which is a nice way to show results. Think of it as the future of research, where your results are interactive. Anyone who can download the notebook will run the same exact experiments.

Take a look at the multiple examples already out there:

IPython notebook example

If you don't like to work in the browser, I suggest my setup which is:

Remember that all the IPython front ends (IPython console, IPython QtConsole, IPython Notebook, SublimeREPL, etc.) can be connected to the same IPython core instance.

So, you can easily mix different tools at the same time depending on your needs (writing documentation, writing scientific stuff, code, presentation).

One IPython core to rule them all :-)


You could try Spyder which is multi-platform, easy to use, provides syntax coloring, interactive debugging etc. You will still rely on libraries such as matplotlib or NumPy, and the IDE itself may not be good enough if you are dealing with very large sets of numbers.

There are also other similar projects such as Python(x,y) or WinPython (Windows only) that try to promote/facilitate the use of Python for scientific and engineering software development.


Start with any IDE which supports (in-fact lots of IDE these days has support for) syntax highlighting, code completion, smart indentation, code execution directly from the source editor. If you are unsure refer the SO Question What IDE to use for Python?

  • Next, explore matplotlib for your plotting needs.
  • Next, what ever IDE you chose, search for a git pluggin. If your chosen IDE does not have one, select another from the IDE list which has the necessary git pluggin.
  • Install the necessary packages like Numpy/ Scipy/ Sympy. Refer the link Numeric and Scientific

Note Eclipse with PyDev might work considering it has support for git (EGit)and you would have no issue with integrating matplotlib. Infact there is another SO thread dedicated for Interactive matplotlib through Eclipse PyDev

Finally, if you want to sacrifice on ease of development compared to PyCharm or PyDev, Scientific Python may be a good option for you.