

Data Visualization with Python and JavaScript: Scrape, Clean, Explore & Transform Your Data [Dale, Kyran] on desertcart.com. *FREE* shipping on qualifying offers. Data Visualization with Python and JavaScript: Scrape, Clean, Explore & Transform Your Data Review: Outstanding Coverage of a Powerful Toolchain - Forgive the long winded review, but this book really resonated with me because (I think) I happen to align just about spot-on with its intended audience. I needed to setup a visualization dashboard to take in GBs of data weekly, and allow users to easily view it at various levels of granularity and slice through various directions in data space. This was for chip design data, so the data elements at their worst could represent hundreds of millions of transistors and connections, and the various data spaces could be timing, power, layout (physical space), time (timestamps) and so forth. But the specifics of the data are not important - the point is that there was a lot of it, and that users needed to interactively examine it. After introductory chapters covering foundational matters in python, javascript, html, css, and svg, Dale works through each stage of the data acquisition, processing, and visualization flow, following a nontrivial example project from the very beginning all the way through to completion. The first sections cover data procurement, cleaning techniques, and exploratory data visualization with pandas and matplotlib. Although in my case this portion of the flow was not as crucial (my data was more or less easy pickings and familiar), I did get a nice instructive window into some the issues that the "data science" crowd routinely worry about. I expect to benefit much more from this material in the future, as it is certain I'll have to confront less familiar datasets at some point. See the TOC online, as there is a lot of nice material here that, as it happens, I didn't yet need to dig into for my particular project. This time, that is. Since I already knew most of the requirements for my visualizations, my work started in earnest with the web app. This is where Dale's book really laid out a clear, detailed path for me. On the server side, his choice of the Flask micro web framework was a good fit, and the explanations were clear and helpful. Like many, I have in recent years become enamored of scripting in python, and Flask is a nice lightweight framework in which to easily code up a solid data delivery interface. I opted for MongoDB storage, but SQL is supported too; both are covered in the book. It's all spelled out, and it was straightforward to apply his techniques to my problem. One of the keys to making this work for me was his prescription for how to make a clean so-called REST interface, including - crucially - pagination, to throttle loads of JSON data from the server to the client via ajax. Then, on the client side, crossfilter.js and d3.js make it possible to produce some very sophisticated (and beautiful) visualizations. Crossfilter and d3, with all their subtleties and moving parts, are not easy tools to master - at least not for me. And there is perhaps an over abundance of code snippets out there on the web, a kind of fast food diet that does not provide sufficient understanding necessary to prevent the inevitable frustration later on when this approach starts to let you down. So Dale's step by step, screenshot by screenshot walkthroughs, with excellent color diagrams, really helped tremendously here. I have not seen better explanations anywhere. Final notes: The various sections of the book are relatively independent and can stand alone; depending on your background, you may be able to skip around and hunt for exactly what you need. If you are in a short term deadline situation, this may very well be the best approach initially. A reasonable skim of the appropriate section(s) of the book and a bit of copy-paste with the code should get you on your way. But, speaking generally, I would tend to advise against such an approach, especially when you're not under time pressure. This book is more of a running storyline and workshop than a quick-reference cookbook. A hunt-copy-paste approach could very well blind you to the whole point, and lead you to toss the book aside, incorrectly concluding that it won't help you after all. And even if you reap some quick early victories, you may still miss out on unexpected goodies that you'll later wish you hadn't. Instead, a more careful, active study is required to gain the fluency with these tools that you actually need so that they won't crumble when you try to apply them in new circumstances. If you make the effort, this extraordinary book will show you how to gain this fluency. Review: Some Contents are Outdated - It's a good book overall, it covers basics of web development, web scraping, data analytics with Python, data visualization in Python and with D3. But be warned that many topics in the books are already outdated given how fast this field is developing. Let me give you a few examples: 1. This book says JavaScript doesn't support creating class in pythonic way, but now it does. 2. This book introduces pandas panel and .ix method for pandas data frame, but now they are both deprecated. 3. d3.json() method is changed to d3.json().then() There are many other small things that are outdated which I'm not going to list. When reading this book, make sure to also google the topics and check if there are better ways.
































































| Best Sellers Rank | #3,316,543 in Books ( See Top 100 in Books ) #2,868 in Python Programming #20,152 in Computer Science (Books) |
| Customer Reviews | 4.0 4.0 out of 5 stars (53) |
| Dimensions | 5.75 x 1.25 x 8.95 inches |
| Edition | 1st |
| ISBN-10 | 1491920513 |
| ISBN-13 | 978-1491920510 |
| Item Weight | 1.87 pounds |
| Language | English |
| Print length | 592 pages |
| Publication date | August 16, 2016 |
| Publisher | O'Reilly Media |
J**Y
Outstanding Coverage of a Powerful Toolchain
Forgive the long winded review, but this book really resonated with me because (I think) I happen to align just about spot-on with its intended audience. I needed to setup a visualization dashboard to take in GBs of data weekly, and allow users to easily view it at various levels of granularity and slice through various directions in data space. This was for chip design data, so the data elements at their worst could represent hundreds of millions of transistors and connections, and the various data spaces could be timing, power, layout (physical space), time (timestamps) and so forth. But the specifics of the data are not important - the point is that there was a lot of it, and that users needed to interactively examine it. After introductory chapters covering foundational matters in python, javascript, html, css, and svg, Dale works through each stage of the data acquisition, processing, and visualization flow, following a nontrivial example project from the very beginning all the way through to completion. The first sections cover data procurement, cleaning techniques, and exploratory data visualization with pandas and matplotlib. Although in my case this portion of the flow was not as crucial (my data was more or less easy pickings and familiar), I did get a nice instructive window into some the issues that the "data science" crowd routinely worry about. I expect to benefit much more from this material in the future, as it is certain I'll have to confront less familiar datasets at some point. See the TOC online, as there is a lot of nice material here that, as it happens, I didn't yet need to dig into for my particular project. This time, that is. Since I already knew most of the requirements for my visualizations, my work started in earnest with the web app. This is where Dale's book really laid out a clear, detailed path for me. On the server side, his choice of the Flask micro web framework was a good fit, and the explanations were clear and helpful. Like many, I have in recent years become enamored of scripting in python, and Flask is a nice lightweight framework in which to easily code up a solid data delivery interface. I opted for MongoDB storage, but SQL is supported too; both are covered in the book. It's all spelled out, and it was straightforward to apply his techniques to my problem. One of the keys to making this work for me was his prescription for how to make a clean so-called REST interface, including - crucially - pagination, to throttle loads of JSON data from the server to the client via ajax. Then, on the client side, crossfilter.js and d3.js make it possible to produce some very sophisticated (and beautiful) visualizations. Crossfilter and d3, with all their subtleties and moving parts, are not easy tools to master - at least not for me. And there is perhaps an over abundance of code snippets out there on the web, a kind of fast food diet that does not provide sufficient understanding necessary to prevent the inevitable frustration later on when this approach starts to let you down. So Dale's step by step, screenshot by screenshot walkthroughs, with excellent color diagrams, really helped tremendously here. I have not seen better explanations anywhere. Final notes: The various sections of the book are relatively independent and can stand alone; depending on your background, you may be able to skip around and hunt for exactly what you need. If you are in a short term deadline situation, this may very well be the best approach initially. A reasonable skim of the appropriate section(s) of the book and a bit of copy-paste with the code should get you on your way. But, speaking generally, I would tend to advise against such an approach, especially when you're not under time pressure. This book is more of a running storyline and workshop than a quick-reference cookbook. A hunt-copy-paste approach could very well blind you to the whole point, and lead you to toss the book aside, incorrectly concluding that it won't help you after all. And even if you reap some quick early victories, you may still miss out on unexpected goodies that you'll later wish you hadn't. Instead, a more careful, active study is required to gain the fluency with these tools that you actually need so that they won't crumble when you try to apply them in new circumstances. If you make the effort, this extraordinary book will show you how to gain this fluency.
Y**U
Some Contents are Outdated
It's a good book overall, it covers basics of web development, web scraping, data analytics with Python, data visualization in Python and with D3. But be warned that many topics in the books are already outdated given how fast this field is developing. Let me give you a few examples: 1. This book says JavaScript doesn't support creating class in pythonic way, but now it does. 2. This book introduces pandas panel and .ix method for pandas data frame, but now they are both deprecated. 3. d3.json() method is changed to d3.json().then() There are many other small things that are outdated which I'm not going to list. When reading this book, make sure to also google the topics and check if there are better ways.
W**S
Tour De Force Of Data Visualization
This book does an excellent job of showing how to create a website for Data Visualization. Python and Javascript are the choosen languages along with many libraries. The choice of Python was for its strength in manipulating data, and Javascript is used for the front-end, particularly the D3 library. Throughout the book there is an example which uses data about Nobel Prize winners. The data is pulled from Wikipedia, cleaned, analyzed, hosted, and visualized. Each step of the process was explained well. The beginning of the book starts by introducing Python and Javascript; how they are different and how they are similar. Then each step of the 5-step process is explained with multiple chapters dedicated to each step. I was surprised how often the author had the meta-view to know which libraries were best, and to be able to link to all the right places. There are no random links, or extraneous information, everything was relevant to the goal of creating the site. Language in the book is better than most as the author takes times to explain in interesting ways. On page 274 when introducting different graph types he says: "The humble bar chart is a staple for a lot of visual data exploration." What a nice way to explain the importance of the bar chart. At the end I had a clear picture of how to build an impressive data visualization website form scratch. It was great to see an author who can provide a full-stack implementation and explain each aspect with ease. This book is in color which I really appreciated. It helped a lot to have syntax highlighting and I hope O'rielly does this for all their other books. The dimensions of the book is smaller than other O'rielly books as well; it was comfortable.
K**N
The guy who complained about the pre-release is an idiot.
Pretty solid book, I wish it went more in depth on other methods of scraping and building crawlers and such. It seems like every book skips the theory and just says use scrapy. Bought the print version and am very pleased with it so far. I've made it about 3/4ths of the way through, it's a good intro to this stuff.
P**S
I read others reviews and I am surprised so many people disliked it. I love this book. Maybe since I am in the position of having programming as a day job but coming from a completely different area: compilers. So I know nothing of webdev, data viz, which technologies are out there, how can I get them to interact with each other, etc. This is a tour de force to all those technologies and even without going into any of these in-depth it touches several important concepts and technologies: mongodb, d3js, flask etc. For those looking for in-depth guides this is not it. But if you're looking for an introduction to technologies in the data viz world this is for you. The example written from scratch is perfect and gives you a nice idea of what's possible.
C**N
If you are starting Python and Javascript, choose another book as this for someone who already have skills on both programming languages.
B**N
Kyran Dale makes the point that while there are great tutorials for learning D3 or for building a Python REST API, there aren't a lot of resources that span the whole pipeline from scraping web data to building a NoSQL database, serving the data and writing a front-end with linked visualisations. Probably that's because to do so is a huge ask and requires knowledge of a load of different modules and (in this case) two programming languages but in this book he does a great job of covering a lot of material. I also think the level of detail is about right: he introduces important libraries like pandas and seaborn even though they're not really used in the main project of the book and he doesn't skimp on explaining the d3 code (Amazon currently says this is 300 pages long but my print copy stretches over 500 pages). As a bonus I didn't realise that the coloured animals on the cover signal the print book is full-colour, including syntax-highlighted code listings — it looks great! To be critical, the end result doesn't come out looking like a super awesome finished product. It would be nice to see it fleshed out with some styling and wrapped by a proper js web framework, maybe that's intentionally left as an exercise for the reader.
A**A
The books tries to cover a number of complex topics. For this reason they are explained without going deep with explanations. Even if it is interesting, I would have preferred a number of single themed books.
A**R
full of errors. May need to wait for a while to make sure the editor corrects all the mistakes. Good topics in the book, but you may waste more time helping the author and editor pinpointing the mistakes. Not recommended for entry level.
Trustpilot
1 month ago
1 day ago