官术网_书友最值得收藏!

Preface

Why Matplotlib? Why Python, for that matter? I picked up Python for scientific development because I needed a full-fledged programming language that made sense. Too often, I felt hemmed in by the traditional tools in the meteorology field. I needed a language that respected my time as a developer and didn't fight me every step of the way. "Don't you find Python constricting?" asked a colleague who was fond of bad puns. "No, quite the opposite," I replied, the joke going right over my head.

Matplotlib is the same in this respect. Switching from traditional graphing tools of the meteorology field to Matplotlib was a breath of fresh air. Not only were useful programs being written using the Matplotlib library, but it was also easy to write my own. Furthermore, I could write out modules and easily use them in both the hardcopy generating scripts for my publications and for my data exploration interactive applications. Most importantly, the Matplotlib library let me do what I needed it to do.

I have been an active developer for Matplotlib since 2010 and I am still discovering Matplotlib. It isn't that the library is insanely huge and unwieldy—it isn't. Instead, Matplotlib appeals to all levels of expertise and interests. One can simply care enough only to get a single plot displayed in three line of code and never think of the library again. Or, one could assume control over every single minute plotting detail, ensuring that everything is displayed "just right." And even when one does this and thinks they have seen every single nook and cranny of the library, they will discover some other feature that they have never seen before.

Matplotlib is 12 years old now. New plotting projects have cropped up—some supplementing Matplotlib's design, while others trying to replace Matplotlib entirely. However, there has been no slacking of interest in Matplotlib, not from the users and definitely not from the developers. The new projects are interesting, and as with all things open source, we try to learn from these projects. But I keep coming back to this project. Its design, developers, and community of users are some of the best and most devoted in the open source world.

The book you are reading right now is actually not the book I originally wanted to write. The interactive aspect of Matplotlib is not my area of expertise. After some nudging from fellow developers and users, I relented. I proceeded to rewrite the only interactive application I had ever finished and published. Working through the chapters, I tried to find better ways of doing the things I did originally, pointing out major pitfalls and easy mistakes as I encountered them. It was a significant learning experience for me, which was wholly unexpected.

I now invite you to discover Matplotlib for yourself. Whether it is the first time or not, it certainly won't be the last.

主站蜘蛛池模板: 巴南区| 长宁县| 沙河市| 扎赉特旗| 盈江县| 扎鲁特旗| 西昌市| 井陉县| 沁阳市| 温宿县| 苍山县| 六枝特区| 偃师市| 商水县| 柘城县| 平谷区| 民权县| 玉屏| 洞口县| 鹤山市| 德钦县| 梁河县| 中卫市| 萍乡市| 十堰市| 安西县| 噶尔县| 平泉县| 临西县| 阳江市| 双柏县| 麻栗坡县| 察隅县| 大庆市| 商南县| 武川县| 乳源| 化州市| 东山县| 项城市| 怀化市|