Canopy scientific Python editor for Windows

March 2020 update: The Canopy scientific Python editor is at end-of-life. If you’re searching for a good Python IDE, see here. I’m leaving this post here for archival reasons since there’s very little other info on this product available online.

In my last post on IDEs for scientific Python, I couldn’t install, and therefore couldn’t properly review Canopy, a commercial IDE developed by Enthought, who sponsor SciPy. I had a chance to install it on Windows and try it.

sc1

Canopy’s main screen shows three options: Editor, Package Manager and documentation browser. The package manager offers a graphical interface to perform much the same tasks as easy_install and pip. The documentation browser offers shortcuts for the online docs for Scipy, matplotlib, and more; it would be preferable, IMHO, if the installation included offline copies of this documentation.

sc2

The main editor interface is uncluttered and fairly basic. ipython is used as the interpreter, and interestingly, the interface offers an option for including matplotlib graphics inline via SVG rather than in separate windows. Canopy’s editor is fairly smart, offering autocompletion and basic introspection, on par with that of Spyder but not as advanced as that in PyDev. docstrings pop up in a tooltip on hitting the Tab key after an opening parenthesis. The editor supports running both a complete file and a selection via run tools.

And – that’s pretty much it. There’s no function browser, project manager or graphical debugger – although post-hoc debugging is supported in the ipython console via the debug command. Although I appreciate that the interface is solid and uncluttered – this was the main positive I mentioned when discussing IEP – I was expecting more from a commercial product, especially one that costs 199$ for the 64-bit Windows version. Although free versions are available for 32-bit platforms and academic users, support is limited, AFAIK, to StackOverflow.

This is a new product, and it seems that Enthought wants to push in the direction of making scientific Python more accessible for novices by removing the main barriers to entry – the next version promises to have integrated e-learning tutorials in the interface. This is a noble goal, although I can see other, perhaps more productive ways to accomplish the same goal, for instance:

  • Interactive notebooks on specific themes, running in ipython Notebook, similar to Maple’s tutorials
  • Graphical access to plotting commands and common analysis commands, as in Matlab and RKWard
  • A Matlab-to-Python table of equivalence integrated in the documentation
  • Wizards for common tasks (for instance, a data import tool)
  • Written introduction to Python with emphasis on science in the documentation, like here.

I like the editor, and in terms of bare-bones, smooth editors it’s a little better than IEP. In terms of features, however, Spyder is better. It’s a good option if you can get it for free (academic or 32-bit versions).

  • Editor: 3.5/5
  • Interpretor integration: 4/5
  • Plotting: 4/5
  • Debugging: 2/5
  • Smooth: 4/5

Overall score: 3.5 if you can get it for free, 2.5 otherwise.

5 responses to “Canopy scientific Python editor for Windows”

  1. why does the program don’t show the plot?
    import scipy
    import numpy as np
    import matplotlib.pyplot as plt
    X=([1,2,3,4,5,6,7,8,9])
    Y=([1.2,3.14,7.79,6,7,2,5,9])
    mypoly=np.poly1d(np.array(Y).astype(float))
    x=np.linspace(0,10,100)
    y=mypoly(x)
    plt.plot(x,y)
    print(np.min(Y))
    print(np.mean(Y))

  2. (Disclaimer, I work for Enthought.) Thanks for the review and for retrying Canopy on Windows! We appreciate your feedback and will take note of them for the future! Here are a couple of points in case you aren’t already aware of them:

    * Canopy does support working with IPython notebooks. You can open an existing ipynb file or create a new one from File->New->IPython notebook.

    * The documentation browser offers you handy integration with IPython and the editor where you can copy or run any code blocks directly.

    • help() was broken both times I attempted to install your Canopy ‘upgrade’…I preferred the clean, non broken python Enthought distro I discovered 6 months ago. The redirection to StackOverflow is a real cop out. I gave up after about ten minutes on that site looking for an explanation for why pydoc and help weren’t working, and came here looking for alternatives. Looks like there a plenty. Sorry Canopy, I’m uninstalling tomorrow.

      • Well, for the free version of a software package, including many of the ones discussed here, support options are almost always either a mailing list or SO. We charge for support (which in turn funds the free version) and have to focus our support resources. We do monitor SO and provide responses as time permits. As regards EPD being non-broken and Canopy being so, our apologies, give it a little while and I’m sure you won’t be disappointed. This is our first major release of Canopy and we’re working out the initial wrinkles. EPD was around for many years getting its wrinkles cleared up.

Leave a comment

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s