Discussion:
What would you like to see in a book about Matplotlib?
(too old to reply)
Sandro Tosi
2009-01-05 09:57:48 UTC
Permalink
Hello and Happy 2009!

I received the interesting proposal to author a book on Matplotlib,
the powerful 2D plotting library for Python.

While preparing the arguments list, I'd like to hear even your
opinion, because different points-of-view will lead to a better
product.

Some basic question I'd like to ask are:

- what are you using matplotlib for?
- what are the things you like the most of matplotlib, that you want
to give emphasis to? And why?
- what are the (basic) things that, when you were beginning to use
matplotlib, you wanted to see grouped up but couldn't find?
- what would you like to see in a book about matplotlib?
- what are some those advanced feature that made you yell "WOW!!" ?
- what are the things you'd like to explore of matplotlib and never
had time to do?

Your suggestions are really appreciated :) And wish me good luck!
Marco Nawijn
2009-01-06 08:26:13 UTC
Permalink
Post by Sandro Tosi
Hello and Happy 2009!
I received the interesting proposal to author a book on Matplotlib,
the powerful 2D plotting library for Python.
While preparing the arguments list, I'd like to hear even your
opinion, because different points-of-view will lead to a better
product.
- what are you using matplotlib for?
- what are the things you like the most of matplotlib, that you want
to give emphasis to? And why?
- what are the (basic) things that, when you were beginning to use
matplotlib, you wanted to see grouped up but couldn't find?
- what would you like to see in a book about matplotlib?
- what are some those advanced feature that made you yell "WOW!!" ?
- what are the things you'd like to explore of matplotlib and never
had time to do?
Your suggestions are really appreciated :) And wish me good luck!
Hello Sandro,

I am happy to hear that there might be a book on Matplotlib. I am
using Matplotlib for a while now and find it a very usefull and
powerfull library for generating graphs. I will try to answer some of
your questions. I am by no means an expert in the field, so I only
express my personal experience.
Post by Sandro Tosi
What are you using matplotlib for? I currently use Matplotlib to generate a series of graphs that visualise data channels (strain measurements) during a structural test. These graphs need to be refreshed about every 4 seconds. Each of the graphs contains 1 to 6 curves.
What are the things you like the most of matplotlib, that you want
to give emphasis to? And why? In general I like the most the fact that
I can generate high quality publication ready graphs with a consistent
look with minimal effort. Further, although the matlab-style commands
are very usefull I think the class interface is more powerfull. The
class interface also has a steeper learning curve. So, for me it would
be very interesting if much emphasis will be on the class interface.
Post by Sandro Tosi
What are the (basic) things that, when you were beginning to use
matplotlib, you wanted to see grouped up but couldn't find? I
seriously hope the book is not for "dummies", but provides at least a
significant amount of information on more advanced features of
Matplotlib. I think the currently available tutorials are sufficient
to getting started. From my point of view I am very interested in:
- Dynamically updating a series of graphs
- Configuring layout of graphs (colors, labels, legends, etc.)
- Managing dimensions of the figure when you export the figure to
e.g PNG. For me this is interesting in the sense that if I insert a
figure in a report/paper, I would like that the fonts used in the
graph remain proportional to the surrounding text.

If you need more information please let me know.

I wish you good luck!

Kind regards,

Marco
Sandro Tosi
2009-01-11 08:54:25 UTC
Permalink
Hello Marco,
thanks for your reply (and sorry for my late one)
Post by Marco Nawijn
I am happy to hear that there might be a book on Matplotlib. I am
using Matplotlib for a while now and find it a very usefull and
powerfull library for generating graphs. I will try to answer some of
your questions. I am by no means an expert in the field, so I only
express my personal experience.
And that's fine, because the audience of the book is people that have
never seen matplotlib and wanted to learn it.
Post by Marco Nawijn
What are you using matplotlib for? I currently use Matplotlib to generate a series of graphs that visualise data channels (strain measurements) during a structural test. These graphs need to be refreshed about every 4 seconds. Each of the graphs contains 1 to 6 curves.
Just out of curiosity: how do you refresh those plots? in a loop
closing/opening the figure or clear the figure and replot on it? are
those graphs embedded in an application or are just "shown on screen"?
Post by Marco Nawijn
What are the things you like the most of matplotlib, that you want
to give emphasis to? And why? In general I like the most the fact that
I can generate high quality publication ready graphs with a consistent
look with minimal effort.
Indeed, that's one of the reason for its use in so many scientific
environments.
Post by Marco Nawijn
Further, although the matlab-style commands
are very usefull I think the class interface is more powerfull. The
class interface also has a steeper learning curve. So, for me it would
be very interesting if much emphasis will be on the class interface.
Yes, we will show the "class" interface during the examples, while
showing the difference just for the sake of completeness.
Post by Marco Nawijn
What are the (basic) things that, when you were beginning to use
matplotlib, you wanted to see grouped up but couldn't find? I
seriously hope the book is not for "dummies",
as already said, this bug is intended to people that knows nothing
about mpl, so an introductory part will begin the book.
Post by Marco Nawijn
but provides at least a
significant amount of information on more advanced features of
Matplotlib.
and we will try to show as much features as possible, even the
advanced one.
Post by Marco Nawijn
I think the currently available tutorials are sufficient
? ? - Dynamically updating a series of graphs
? ? - Configuring layout of graphs (colors, labels, legends, etc.)
? ? - Managing dimensions of the figure when you export the figure to
e.g PNG. For me this is interesting in the sense that if I insert a
figure in a report/paper, I would like that the fonts used in the
graph remain proportional to the surrounding text.
Those will be surely in the book :)
Post by Marco Nawijn
If you need more information please let me know.
Well, whatever comes to mind, please let me know :)
Post by Marco Nawijn
I wish you good luck!
Cheers,
Sandro
James Stroud
2009-01-06 08:33:31 UTC
Permalink
Post by Sandro Tosi
Hello and Happy 2009!
I received the interesting proposal to author a book on Matplotlib,
the powerful 2D plotting library for Python.
While preparing the arguments list, I'd like to hear even your
opinion, because different points-of-view will lead to a better
product.
- what are you using matplotlib for?
Matplot lib shines for interactive environments wherein graphs and
charts must be produced. I have incorporated it into a simple program
for analysis of fluorometric data: http://fluorit.bravais.net/

(The forthcoming version 1.0 is a quantum improvement in speed and
function over the SLOW *prototype* version 0.9 currently available--see
the wish list, feature requests, and known issues for details. Version
1.0 is very fast.)
Post by Sandro Tosi
- what are the things you like the most of matplotlib, that you want
to give emphasis to? And why?
The ability to embed a figure (composed of subplots) into a custom
window is my favorite aspect. Also: massive configurability of plots,
event driven plot canvas, antigrain geometry antialiasing are also all
very important. Additionally the toolbar of standard interactive
functions and the ability to export plots in a variety of formats are
also invaluable features.
Post by Sandro Tosi
- what are the (basic) things that, when you were beginning to use
matplotlib, you wanted to see grouped up but couldn't find?
The documentation for basic plot configuration, especially for embedded
plots, and also tapping into the event model is very weak currently.
These need the most improvement.
Post by Sandro Tosi
- what would you like to see in a book about matplotlib?
A big, huge, gigantic, chapter---no make that 3 chapters--on programming
interactivity with the plot canvas.
Post by Sandro Tosi
- what are some those advanced feature that made you yell "WOW!!" ?
I listed them above, but my most "WOW" moment was when I saw the Tkinter
backend doing beautiful antialiasing. I was also very happy to
seamlessly add new functionality to the toolbar.
Post by Sandro Tosi
- what are the things you'd like to explore of matplotlib and never
had time to do?
I want to program a lot of interactivity with the plots in my current
application.
Post by Sandro Tosi
Your suggestions are really appreciated :) And wish me good luck!
Good luck! I can't wait to read your book!


James
--
James Stroud
UCLA-DOE Institute for Genomics and Proteomics
Box 951570
Los Angeles, CA 90095

http://www.jamesstroud.com
Sandro Tosi
2009-01-11 09:42:53 UTC
Permalink
Hi James,
thanks for getting back to me.
Post by James Stroud
Post by Sandro Tosi
- what are the things you like the most of matplotlib, that you want
to give emphasis to? And why?
The ability to embed a figure (composed of subplots) into a custom
window is my favorite aspect.
Do you mean embed the figure in an application or simply a figure with
several subplots in it?
Post by James Stroud
Also: massive configurability of plots,
event driven plot canvas, antigrain geometry antialiasing are also all
very important. Additionally the toolbar of standard interactive
functions and the ability to export plots in a variety of formats are
also invaluable features.
Post by Sandro Tosi
- what are the (basic) things that, when you were beginning to use
matplotlib, you wanted to see grouped up but couldn't find?
The documentation for basic plot configuration, especially for embedded
plots, and also tapping into the event model is very weak currently.
These need the most improvement.
What do you mean by "event model"?
Post by James Stroud
Post by Sandro Tosi
- what would you like to see in a book about matplotlib?
A big, huge, gigantic, chapter---no make that 3 chapters--on programming
? interactivity with the plot canvas.
Big chapters a harder to read. And what exactly do you mean by
"interactivity"?
Post by James Stroud
Post by Sandro Tosi
Your suggestions are really appreciated :) And wish me good luck!
Good luck! I can't wait to read your book!
Thanks!

Sandro
Thomas Guettler
2009-01-07 16:11:14 UTC
Permalink
Post by Sandro Tosi
- what are you using matplotlib for?
I use the API to create PNGs from data stored in postgres. Webframework: Django.
Post by Sandro Tosi
- what are the (basic) things that, when you were beginning to use
matplotlib, you wanted to see grouped up but couldn't find?
The API is not good documented. It was very hard for me to understand
what was going on the source.
Post by Sandro Tosi
- what would you like to see in a book about matplotlib?
How to use the API.

Thomas
--
Thomas Guettler, http://www.thomas-guettler.de/
E-Mail: guettli (*) thomas-guettler + de
Sandro Tosi
2009-01-11 10:14:30 UTC
Permalink
Hello Thomas,
thanks for your reply.
Post by Thomas Guettler
Post by Sandro Tosi
- what are you using matplotlib for?
I use the API to create PNGs from data stored in postgres. Webframework: Django.
Nice, I plan to make some examples of web embedding of mpl, and one of
the frameworks is Django.
Post by Thomas Guettler
Post by Sandro Tosi
- what are the (basic) things that, when you were beginning to use
matplotlib, you wanted to see grouped up but couldn't find?
The API is not good documented. It was very hard for me to understand
what was going on the source.
Post by Sandro Tosi
- what would you like to see in a book about matplotlib?
How to use the API.
Of course we will follow a gradual path, introducing simple apis and
then going deeper in the advanced features. So, if you mean API as
"pyplot.figure()" and so, they'll be covered :)

Thanks,
Sandro
Dotan Cohen
2009-01-11 09:02:59 UTC
Permalink
Post by Sandro Tosi
Hello and Happy 2009!
I received the interesting proposal to author a book on Matplotlib,
the powerful 2D plotting library for Python.
While preparing the arguments list, I'd like to hear even your
opinion, because different points-of-view will lead to a better
product.
- what are you using matplotlib for?
- what are the things you like the most of matplotlib, that you want
to give emphasis to? And why?
- what are the (basic) things that, when you were beginning to use
matplotlib, you wanted to see grouped up but couldn't find?
- what would you like to see in a book about matplotlib?
- what are some those advanced feature that made you yell "WOW!!" ?
- what are the things you'd like to explore of matplotlib and never
had time to do?
Your suggestions are really appreciated :) And wish me good luck!
I wish you good luck!

I would suggest at least a chapter on _acquiring_ the data that is to
be plotted using Python to scrape different sources _not_designed_ to
be scraped. Online webpages come to mind. An example on retrieving,
for instance, the prices of varying currencies, parsing the HTML
pages, extracting the data, and then plotting it would be a great
example for a real worlds usage that show matplotlib as a tool in a
toolchain, not a means to an end.
--
Dotan Cohen

http://what-is-what.com
http://gibberish.co.il

?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?
?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-??-?-?
?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?
?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?
?-?-?-?-?-?-?
Sandro Tosi
2009-01-11 10:17:13 UTC
Permalink
Hi Dotan,
Post by Marco Nawijn
Post by Sandro Tosi
Your suggestions are really appreciated :) And wish me good luck!
I wish you good luck!
Thanks you :)
Post by Marco Nawijn
I would suggest at least a chapter on _acquiring_ the data that is to
be plotted using Python to scrape different sources _not_designed_ to
be scraped. Online webpages come to mind. An example on retrieving,
for instance, the prices of varying currencies, parsing the HTML
pages, extracting the data, and then plotting it would be a great
example for a real worlds usage that show matplotlib as a tool in a
toolchain, not a means to an end.
Well, a whole chapter to this is a little too much, but such examples
will be presented in the book: we're not going to teach how to program
in Python, but how to use matplotlib, so the data retriving is a
little out-of-scope (or at least border-line), so the code will be in
the examples provided along with the book, but not deeply explained in
the book text.

Thanks,
Sandro
Dotan Cohen
2009-01-11 17:50:28 UTC
Permalink
Post by Sandro Tosi
Post by Dotan Cohen
I would suggest at least a chapter on _acquiring_ the data that is to
be plotted using Python to scrape different sources _not_designed_ to
be scraped. Online webpages come to mind. An example on retrieving,
for instance, the prices of varying currencies, parsing the HTML
pages, extracting the data, and then plotting it would be a great
example for a real worlds usage that show matplotlib as a tool in a
toolchain, not a means to an end.
Well, a whole chapter to this is a little too much, but such examples
will be presented in the book: we're not going to teach how to program
in Python, but how to use matplotlib, so the data retriving is a
little out-of-scope (or at least border-line), so the code will be in
the examples provided along with the book, but not deeply explained in
the book text.
The problem with that approach is that you limit your audience to people who:
1) Are interested in matplotlab
-AND-
2) Are already familiar with Python

For every AND clause you remove you broaden the book's audience. You
do not need to rewrite the book on Python programming or programming
in general, but getting a C or even PHP programmer up to speed on the
basics of Python as related to matplotlib will make the book much more
accessible. At a minimum, it will add another valuable chapter to the
book that can be safely ignored by Python gurus. And you are making
the book that much more accessible.
--
Dotan Cohen

http://what-is-what.com
http://gibberish.co.il

?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?
?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-??-?-?
?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?
?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?-?
?-?-?-?-?-?-?
Sandro Tosi
2009-01-11 19:16:25 UTC
Permalink
Post by Dotan Cohen
Post by Sandro Tosi
Post by Dotan Cohen
I would suggest at least a chapter on _acquiring_ the data that is to
be plotted using Python to scrape different sources _not_designed_ to
be scraped. Online webpages come to mind. An example on retrieving,
for instance, the prices of varying currencies, parsing the HTML
pages, extracting the data, and then plotting it would be a great
example for a real worlds usage that show matplotlib as a tool in a
toolchain, not a means to an end.
Well, a whole chapter to this is a little too much, but such examples
will be presented in the book: we're not going to teach how to program
in Python, but how to use matplotlib, so the data retriving is a
little out-of-scope (or at least border-line), so the code will be in
the examples provided along with the book, but not deeply explained in
the book text.
1) Are interested in matplotlab
-AND-
2) Are already familiar with Python
That is exactly the target the editor wants to reach...
Post by Dotan Cohen
For every AND clause you remove you broaden the book's audience. You
do not need to rewrite the book on Python programming or programming
in general, but getting a C or even PHP programmer up to speed on the
basics of Python as related to matplotlib will make the book much more
accessible. At a minimum, it will add another valuable chapter to the
book that can be safely ignored by Python gurus. And you are making
the book that much more accessible.
I will try to ask this, but they were really clear that knowing python
is a prerequisite of the book readers.
--
Sandro Tosi (aka morph, morpheus, matrixhasu)
My website: http://matrixhasu.altervista.org/
Me at Debian: http://wiki.debian.org/SandroTosi
Continue reading on narkive:
Loading...