{"id":874,"date":"2018-09-06T03:42:42","date_gmt":"2018-09-06T00:42:42","guid":{"rendered":"http:\/\/kusuaks7\/?p=479"},"modified":"2021-05-11T13:59:16","modified_gmt":"2021-05-11T13:59:16","slug":"what-are-the-ingredients-of-a-terrible-data-story","status":"publish","type":"post","link":"https:\/\/www.experfy.com\/blog\/bigdata-cloud\/what-are-the-ingredients-of-a-terrible-data-story\/","title":{"rendered":"What are the Ingredients of a Terrific Data Story?"},"content":{"rendered":"<p><strong><em>Ready to learn Data Science? Browse courses like <a href=\"https:\/\/www.experfy.com\/training\/courses\/effective-data-visualization\">Effective Data Visualization<\/a> developed by industry thought leaders and Experfy in Harvard Innovation Lab.<\/em><\/strong><\/p>\n<h5 id=\"7cf0\" name=\"7cf0\"><strong>How ignoring the grammar of graphics can destroy even legendary data visualizations<\/strong><\/h5>\n<blockquote id=\"1d9a\" name=\"1d9a\"><p>&ldquo;Lions are mammals belonging to the cat family&rdquo; &ldquo;eating is the ingestion of food to provide an organism with energy&rdquo; &ldquo;giraffes are the tallest living animals&rdquo;.<\/p><\/blockquote>\n<p id=\"aaa3\" name=\"aaa3\">Does the above sentence make any sense? Writing about the eating habits of lions, I forced myself to use phrases or sentences, instead of the conventional way. The same sentence when composed naturally would come out to be:<\/p>\n<blockquote id=\"0211\" name=\"0211\"><p>&ldquo;Lions eat giraffes&rdquo;<\/p><\/blockquote>\n<p id=\"85b2\" name=\"85b2\">Now that&rsquo;s succinct and makes a lot more sense. We are so used to this way of composing sentences in any language that we take it for granted in our day-to-day communication. But, why should consumption of data be any different?<\/p>\n<p id=\"2a72\" name=\"2a72\">Why do we artificially impose constraints of communicating using monolithic charts? While presenting analytical insights, data science practitioners think templatized dashboards and readymade charts. Sales trends become bar charts in a&nbsp;<em>&lsquo;KPI section&rsquo;&nbsp;<\/em>at the top, while product mix is a pie chart below, and so on.<\/p>\n<p id=\"a952\" name=\"a952\">This is just the same as forcing communication using preset sentences, rather than stringing together the right set of words, to convey an elegant message. Unfortunately, this malaise is way too common today, and every time this happens, an information designer&rsquo;s heart bleeds.<\/p>\n<h4 id=\"3e3a\" name=\"3e3a\"><strong>Not convinced yet?<\/strong><\/h4>\n<p id=\"836b\" name=\"836b\">Just in case you&rsquo;re still wondering what I&rsquo;m getting to, lets try an interesting experiment. We&rsquo;ll pick an elegant visual, widely considered to be an all-time best, and find out what would happen if we use a staid, templatized approach to presenting the very same data.<\/p>\n<figure id=\"b21e\" name=\"b21e\">\n<p><canvas height=\"37\" width=\"75\"><\/canvas><img decoding=\"async\" data-src=\"https:\/\/cdn-images-1.medium.com\/max\/640\/1*qqdMT4e3xfGLzvmaZTq51g.png\" src=\"https:\/\/cdn-images-1.medium.com\/max\/640\/1*qqdMT4e3xfGLzvmaZTq51g.png\" \/><\/p>\n<\/figure>\n<p id=\"c32e\" name=\"c32e\">Let&rsquo;s subject &lsquo;<a data-href=\"https:\/\/news.nationalgeographic.com\/2017\/03\/charles-minard-cartography-infographics-history\/\" href=\"https:\/\/news.nationalgeographic.com\/2017\/03\/charles-minard-cartography-infographics-history\/\" rel=\"noopener noreferrer\" target=\"_blank\">Napoleon&rsquo;s Russian Campaign<\/a>&rsquo; created by Charles Minard to this test. This is a classic, timeless visualisation, considered by Edware Tufte to be the best visualization ever created. This graphic, hand drawn in 1869 was composed by freely letting the data talk its own story, just the right way. With this trial, I do hope Minard doesn&rsquo;t turn in his grave!<\/p>\n<p id=\"91f1\" name=\"91f1\">I first picked the data below, which was recreated by Leland Wilkinson from the visual, and is published in his&nbsp;<a data-href=\"https:\/\/www.amazon.com\/Grammar-Graphics-Statistics-Computing\/dp\/0387245448\" href=\"https:\/\/www.amazon.com\/Grammar-Graphics-Statistics-Computing\/dp\/0387245448\" rel=\"noopener noreferrer\" target=\"_blank\">book<\/a>, which is also the focus of this article. There are three datasets below: the first one shows the cities that Napoleon&rsquo;s army marched through, along with their lat-long.<\/p>\n<p id=\"a812\" name=\"a812\">The second data shows the longitude of places and their temperatures on the quoted dates, that highlights the harsh winter on the army&rsquo;s retreat. The third dataset shows the soldier count at each lat-long, their direction of march (forward or retreat) and if it was the main group, or a splintered one.<\/p>\n<figure id=\"3498\" name=\"3498\">\n<p><canvas height=\"75\" width=\"51\"><\/canvas><img decoding=\"async\" data-src=\"https:\/\/cdn-images-1.medium.com\/max\/640\/1*Ma8qPLaI899rKYmVlgkpJQ.png\" src=\"https:\/\/cdn-images-1.medium.com\/max\/640\/1*Ma8qPLaI899rKYmVlgkpJQ.png\" \/><\/p>\n<\/figure>\n<p id=\"76d5\" name=\"76d5\">Now, lets assume that this data were&nbsp;<em>emailed to us from the campaign frontline<\/em>, and our manager tasked us to create a visualisation overnight. An immediate impulse is to feed this into the corporate dashboarding assembly line. Data goes in from one end on a conveyer belt, robot-arms use preset moulds of dashboard layouts and readymade charts to force-fit them. And out comes a shiny, interactive, colourful piece-of-junk from the other end. Well, almost.<\/p>\n<p id=\"27dc\" name=\"27dc\">I tried applying a crude templatization approach like the above, to &ldquo;<em>Napoleon&rsquo;s March&rdquo;<\/em>&nbsp;to see how we may start with a similar data, but lose all elegance to end up with a corporate-style dashboard using pre-built charts. Here is the final result:<\/p>\n<figure id=\"47a5\" name=\"47a5\">\n<p><canvas height=\"46\" width=\"75\"><\/canvas><img decoding=\"async\" data-src=\"https:\/\/cdn-images-1.medium.com\/max\/640\/1*bLnhbg660UQUNWkYhvPw7Q.png\" src=\"https:\/\/cdn-images-1.medium.com\/max\/640\/1*bLnhbg660UQUNWkYhvPw7Q.png\" \/><\/p>\n<\/figure>\n<p id=\"ca72\" name=\"ca72\" style=\"text-align: center;\">How we killed Charles Minard&rsquo;s storytelling using the modern dashboarding assembly&nbsp;line<\/p>\n<p name=\"ca72\">We&rsquo;ve managed to destroy the narrative, and the legendary data story has been downsized into a petty, ineffective dashboard. I used Tableau public to put this together, but as a strong disclaimer, the issue is NOT with the tool. Tableau is a great tool and so are many others in the market. The issue is always with methodology adopted and a creator&rsquo;s unimaginative treatment.<\/p>\n<h4 id=\"d5fe\" name=\"d5fe\"><strong>A syntax for graphics?<\/strong><\/h4>\n<p id=\"7719\" name=\"7719\">Yes, graphics do have a syntax, and it is possible to pick the right set of underlying elements to compose elegant visuals, rather than clambering around with rigid, pre-built charts. When we embrace these key entities of information design, it endows us with the power to construct any visual.<\/p>\n<p id=\"cf31\" name=\"cf31\">Leaning on the excellent foundation established by Leland Wilkinson in his book,&nbsp;<a data-href=\"https:\/\/www.amazon.com\/Grammar-Graphics-Statistics-Computing\/dp\/0387245448\" href=\"https:\/\/www.amazon.com\/Grammar-Graphics-Statistics-Computing\/dp\/0387245448\" rel=\"noopener noreferrer\" target=\"_blank\">The Grammar of Graphics<\/a>, we will understand the fluid construction of elegant graphics. Using a simple example, we will see how to build a superior visual with data elements, layer by layer. We&rsquo;ll also prove that not all charts need to have standard names.<\/p>\n<blockquote id=\"8018\" name=\"8018\"><p>Grammar makes language expressive. A language that has words and no grammar expresses only as many ideas as there are words.\u200a&mdash;\u200aLeland Wilkinson<\/p><\/blockquote>\n<h4 id=\"79ea\" name=\"79ea\"><strong>What works for English&nbsp;grammar?<\/strong><\/h4>\n<p id=\"f8a2\" name=\"f8a2\">For quick context, lets look at how we intuitively construct sentences in the English language. John&rsquo;s actions on the playground are communicated by bringing in the various parts of speech and stringing them together.<\/p>\n<figure id=\"6604\" name=\"6604\">\n<p><canvas height=\"75\" width=\"75\"><\/canvas><img decoding=\"async\" data-src=\"https:\/\/cdn-images-1.medium.com\/max\/640\/1*58lkBErg-2YP5ukdxrhunw.png\" src=\"https:\/\/cdn-images-1.medium.com\/max\/640\/1*58lkBErg-2YP5ukdxrhunw.png\" \/><\/p>\n<\/figure>\n<p id=\"367c\" name=\"367c\">Any simple rewording can totally alter the structure. For instance, if we swapped the last two words with the first, the sentence turns into&nbsp;<em>&ldquo;The ball hit John&rdquo;<\/em>. A cosmetic change, but the result is not quite the same anymore!<\/p>\n<h4 id=\"d985\" name=\"d985\"><strong>Introducing the Grammar of&nbsp;Graphics<\/strong><\/h4>\n<p id=\"f77f\" name=\"f77f\">To make graphics or visual representations expressive, one must understand their underlying syntactical structure as well. Grammar of graphics provides a standard set of guidelines on converting data into effective visualisations that tell their story.<\/p>\n<p id=\"6636\" name=\"6636\">Lets assume we have the following data to be presented, and it shows the sales performance across 6 cities in the US.<\/p>\n<figure id=\"ed70\" name=\"ed70\">\n<p><canvas height=\"18\" width=\"75\"><\/canvas><img decoding=\"async\" data-src=\"https:\/\/cdn-images-1.medium.com\/max\/640\/1*qPV0QrcYaX6UHa1wodfZEA.png\" src=\"https:\/\/cdn-images-1.medium.com\/max\/640\/1*qPV0QrcYaX6UHa1wodfZEA.png\" \/><\/p>\n<\/figure>\n<p id=\"5a78\" name=\"5a78\">There are 7 layers of grammatical elements in the grammar of graphics. Lets look at each starting from the underlying layers, and moving upwards. This concept is best illustrated with examples, as we go along. We&rsquo;ll use ggplot2, a high-level charting package on R, which was also inspired by the same book.<\/p>\n<p id=\"48b5\" name=\"48b5\">If you&rsquo;re not into coding, don&rsquo;t worry. The snippets of code shown below are only for illustrative purposes and one doesn&rsquo;t need to know programming to follow. Just glance at the tags and see how the visual changes when each word is incrementally added. This needs no more than plain English understanding.<\/p>\n<h4 id=\"41ee\" name=\"41ee\"><strong>Layers 1&ndash;2&ndash;3: Data &mdash; Aesthetics &mdash; Geometries<\/strong><\/h4>\n<figure data-scroll=\"native\" id=\"5200\" name=\"5200\">\n<p><canvas height=\"25\" width=\"75\"><\/canvas><img decoding=\"async\" data-src=\"https:\/\/cdn-images-1.medium.com\/max\/480\/1*QjtyZo8aGbf_fZbdflT6Gg.png\" src=\"https:\/\/cdn-images-1.medium.com\/max\/480\/1*QjtyZo8aGbf_fZbdflT6Gg.png\" \/><\/p>\n<\/figure>\n<p id=\"8ad5\" name=\"8ad5\"><strong>Data<\/strong>&nbsp;is the fundamental base layer, with the elements to be plotted.&nbsp;<strong>Aesthetics<\/strong>&nbsp;layer provides the axes and encoding elements for data.&nbsp;<strong>Geometries<\/strong>layer holds the shapes the can be used to represent the data.<\/p>\n<p id=\"9dba\" name=\"9dba\">Here is a simple command to plot the sales against price for each of the cities, using the 3 layers shown above. Note how the layers are explicitly called out,&nbsp;<strong><em>data<\/em><\/strong>&nbsp;is mapped to the input data frame,&nbsp;<strong><em>aesthetics&nbsp;<\/em><\/strong>layer associates the columns to x-y axes, and&nbsp;<strong><em>geometry<\/em><\/strong>&nbsp;asks for showing the shapes as points.<\/p>\n<blockquote id=\"8b63\" name=\"8b63\"><p>ggplot(<strong>data<\/strong>,&nbsp;<strong>aes<\/strong>(x=Price, y=Sales)) +&nbsp;<strong>geom<\/strong>_point()<\/p><\/blockquote>\n<figure id=\"8627\" name=\"8627\">\n<p><canvas height=\"31\" width=\"75\"><\/canvas><img decoding=\"async\" data-src=\"https:\/\/cdn-images-1.medium.com\/max\/640\/1*5ANhYJxbO7LIZ4uSdUCNuw.png\" src=\"https:\/\/cdn-images-1.medium.com\/max\/640\/1*5ANhYJxbO7LIZ4uSdUCNuw.png\" \/><\/p>\n<\/figure>\n<p id=\"1ab1\" name=\"1ab1\">No, this is not a syntax to create a&nbsp;<em>scatter plot<\/em>. To show how one can play with these 3 layers by encoding more elements, lets now colour the points by the<em>region<\/em>&nbsp;that the city belongs to (left plot). Then, we differentiate the cities by showing the sales volume as the point&rsquo;s size (right plot). Note that there are just 2 additions to the command, as emphasised below.<\/p>\n<blockquote id=\"a491\" name=\"a491\"><p>ggplot(data, aes(x=Price, y=Sales,&nbsp;<strong>color=Region<\/strong>,&nbsp;<strong>size=Volume<\/strong>)) + geom_point()<\/p><\/blockquote>\n<figure data-scroll=\"native\" id=\"7604\" name=\"7604\">\n<p><canvas height=\"31\" width=\"75\"><\/canvas><img decoding=\"async\" data-src=\"https:\/\/cdn-images-1.medium.com\/max\/480\/1*wdoXia3S7dQL20FZfDEVoQ.png\" src=\"https:\/\/cdn-images-1.medium.com\/max\/480\/1*wdoXia3S7dQL20FZfDEVoQ.png\" \/><\/p>\n<\/figure>\n<figure data-scroll=\"native\" id=\"05ca\" name=\"05ca\">\n<p><canvas height=\"31\" width=\"75\"><\/canvas><img decoding=\"async\" data-src=\"https:\/\/cdn-images-1.medium.com\/max\/480\/1*y6YgQKChIFTqgwEl0ta_HA.png\" src=\"https:\/\/cdn-images-1.medium.com\/max\/480\/1*y6YgQKChIFTqgwEl0ta_HA.png\" \/><\/p>\n<\/figure>\n<h4 id=\"1cef\" name=\"1cef\"><strong>Layer 4:&nbsp;Facets<\/strong><\/h4>\n<figure data-scroll=\"native\" id=\"dbb0\" name=\"dbb0\">\n<p><canvas height=\"25\" width=\"75\"><\/canvas><img decoding=\"async\" data-src=\"https:\/\/cdn-images-1.medium.com\/max\/480\/1*d6iXqHStHEbiIPQ82sWW6Q.png\" src=\"https:\/\/cdn-images-1.medium.com\/max\/480\/1*d6iXqHStHEbiIPQ82sWW6Q.png\" \/><\/p>\n<\/figure>\n<p id=\"9286\" name=\"9286\">We now add a 4th layer on top, called &lsquo;<strong>Facets<\/strong>&rsquo;. As the name implies, this is used to&nbsp;<em>facet<\/em>&nbsp;out by creating subplots. At times it is helpful to split and compare plots side by side, to highlight the differences more clearly.<\/p>\n<p id=\"7798\" name=\"7798\">To the same command and plot from above, we ask for the visual to be split apart based on&nbsp;<em>&lsquo;regions&rsquo;<\/em>, rather than showing everything in a single chart.<\/p>\n<blockquote id=\"32cd\" name=\"32cd\"><p>ggplot(data, aes(x=Price, y=Sales, color=Region, size=Volume)) + geom_point() +&nbsp;<strong>facet_wrap(~Region)<\/strong><\/p><\/blockquote>\n<figure id=\"3ed7\" name=\"3ed7\">\n<p><canvas height=\"31\" width=\"75\"><\/canvas><img decoding=\"async\" data-src=\"https:\/\/cdn-images-1.medium.com\/max\/640\/1*Op4uESRq5uoipA-M4EeWvQ.png\" src=\"https:\/\/cdn-images-1.medium.com\/max\/640\/1*Op4uESRq5uoipA-M4EeWvQ.png\" \/><\/p>\n<\/figure>\n<h4 id=\"f3c0\" name=\"f3c0\"><strong>Layer 5: Statistics<\/strong><\/h4>\n<figure data-scroll=\"native\" id=\"48ad\" name=\"48ad\">\n<p><canvas height=\"31\" width=\"75\"><\/canvas><img decoding=\"async\" data-src=\"https:\/\/cdn-images-1.medium.com\/max\/480\/1*maesP7hyux4GM7y51g4O7Q.png\" src=\"https:\/\/cdn-images-1.medium.com\/max\/480\/1*maesP7hyux4GM7y51g4O7Q.png\" \/><\/p>\n<\/figure>\n<p id=\"b85a\" name=\"b85a\">The 5th layer is &lsquo;Statistics&rsquo;, which provides a way to introduce statistical models and summaries such as mean, median, distributions. Its often useful to show the underlying statistics, and the grammar provides a way to do this.<\/p>\n<p id=\"3693\" name=\"3693\">Let&rsquo;s say that we wanted to compute the average&nbsp;<em>sales<\/em>&nbsp;at each of the&nbsp;<em>price<\/em>points. We can dynamically add this by just including one parameter to the same command, which causes cities with same price point to be aggregated.<\/p>\n<blockquote id=\"4f51\" name=\"4f51\"><p>ggplot(data, aes(x=Price, y=Sales)) +&nbsp;<strong>stat_summary_bin<\/strong>(fun.y =&nbsp;<strong>&ldquo;mean&rdquo;<\/strong>, geom = &ldquo;bar&rdquo;)<\/p><\/blockquote>\n<figure id=\"a283\" name=\"a283\">\n<p><canvas height=\"31\" width=\"75\"><\/canvas><img decoding=\"async\" data-src=\"https:\/\/cdn-images-1.medium.com\/max\/640\/1*zY2nYU_4dTJ0aOXmfj-dMQ.png\" src=\"https:\/\/cdn-images-1.medium.com\/max\/640\/1*zY2nYU_4dTJ0aOXmfj-dMQ.png\" \/><\/p>\n<\/figure>\n<h4 id=\"356e\" name=\"356e\"><strong>Layer 6: Coordinates<\/strong><\/h4>\n<figure data-scroll=\"native\" id=\"93d2\" name=\"93d2\">\n<p><canvas height=\"37\" width=\"75\"><\/canvas><img decoding=\"async\" data-src=\"https:\/\/cdn-images-1.medium.com\/max\/480\/1*vvNisLxGbqmu_e8Q0IIZmw.png\" src=\"https:\/\/cdn-images-1.medium.com\/max\/480\/1*vvNisLxGbqmu_e8Q0IIZmw.png\" \/><\/p>\n<\/figure>\n<p id=\"50aa\" name=\"50aa\">At times there is a need to change the coordinate system for plotting. Default cartesian coordinates or x-y plots shown above can thus be transformed. One could switch this into, say a polar coordinate, which happens to be the base for charts like the (un)popular pie or donut charts.<\/p>\n<p id=\"6d6c\" name=\"6d6c\">One single addition to the command with an intuitive naming transforms the entire visual without having to modify any of the base layers. Though not very appropriate or easy to read for our data, this gives an idea of how its done. Is the below a variant of&nbsp;<em>&lsquo;spider or radar chart&rsquo;<\/em>&nbsp;or&nbsp;<em>&lsquo;bubble on circular plot&rsquo;<\/em>? We&rsquo;re already inventing representations!<\/p>\n<blockquote id=\"8090\" name=\"8090\"><p>ggplot(data, aes(x=Price, y=Sales, color=Region, size=Volume)) + geom_point() + facet_wrap(~Region) +&nbsp;<strong>coord_polar()<\/strong><\/p><\/blockquote>\n<figure id=\"221e\" name=\"221e\">\n<p><canvas height=\"31\" width=\"75\"><\/canvas><img decoding=\"async\" data-src=\"https:\/\/cdn-images-1.medium.com\/max\/640\/1*3U9HW4mx1UzQHEQ8ML7lig.png\" src=\"https:\/\/cdn-images-1.medium.com\/max\/640\/1*3U9HW4mx1UzQHEQ8ML7lig.png\" \/><\/p>\n<\/figure>\n<h4 id=\"1b6e\" name=\"1b6e\"><strong>Layer 7:&nbsp;Theme<\/strong><\/h4>\n<figure data-scroll=\"native\" id=\"ccc7\" name=\"ccc7\">\n<p><canvas height=\"40\" width=\"75\"><\/canvas><img decoding=\"async\" data-src=\"https:\/\/cdn-images-1.medium.com\/max\/480\/1*eE_YyD5_QWs4dAKiQoseKQ.png\" src=\"https:\/\/cdn-images-1.medium.com\/max\/480\/1*eE_YyD5_QWs4dAKiQoseKQ.png\" \/><\/p>\n<\/figure>\n<p id=\"49b7\" name=\"49b7\">The final layer in the grammar is &lsquo;Theme&rsquo; which can be conveniently used for any non-data ink. Examples include&nbsp;<em>chart or axes title<\/em>,&nbsp;<em>labels<\/em>,&nbsp;<em>background colour schemes<\/em>&nbsp;and the like. This layer is where stories can be annotated by blending in non-data ink along with the data ink.<\/p>\n<p id=\"fbda\" name=\"fbda\">As with other layers, adding a single parameter&nbsp;<em>&lsquo;theme_bw&rsquo;<\/em>&nbsp;below, transforms the foreground &mdash; background from the default gray scale earlier into a black-on-white theme. Equally easy ways exist to add title, labels, margins or lines.<\/p>\n<blockquote id=\"600b\" name=\"600b\"><p>ggplot(data, aes(x=Price, y=Sales, color=Region, size=Volume)) + geom_point() +&nbsp;<strong>theme_bw()<\/strong><\/p><\/blockquote>\n<figure id=\"7a27\" name=\"7a27\">\n<p><canvas height=\"31\" width=\"75\"><\/canvas><img decoding=\"async\" data-src=\"https:\/\/cdn-images-1.medium.com\/max\/640\/1*ZHvZE6pQyFq1vtSoURwuOw.png\" src=\"https:\/\/cdn-images-1.medium.com\/max\/640\/1*ZHvZE6pQyFq1vtSoURwuOw.png\" \/><\/p>\n<\/figure>\n<p id=\"3cbe\" name=\"3cbe\">Thus, we&rsquo;ve seen how a syntax for graphics can come in handy to seamlessly compose data onto the most appropriate elements. If the intent is to compare sales of two products, plot them as the&nbsp;<em>length<\/em>&nbsp;<strong><em>aesthetic<\/em><\/strong>&nbsp;of the&nbsp;<em>bar<\/em>&nbsp;shaped&nbsp;<strong><em>geometry<\/em><\/strong>. If you want to see how the growth of these products vary, bring this in as the&nbsp;<em>width<\/em>&nbsp;<strong><em>aesthetic<\/em><\/strong>. No, please don&rsquo;t think bar charts yet!<\/p>\n<p id=\"a853\" name=\"a853\">Want to see the margins of these products as well? Encode them as the&nbsp;colour aesthetic. Want to compare the products across companies?&nbsp;<strong><em>Facet<\/em><\/strong>&nbsp;the plot to split the view side-by-side, and compare the two companies easily. Before you share it with your users, add copious&nbsp;<em>text<\/em>&nbsp;using the&nbsp;<strong><em>theme<\/em><\/strong>&nbsp;layer.<\/p>\n<p id=\"e0dd\" name=\"e0dd\">The key risk with thinking in terms of charts is that, as requirements are added, the thought process is invariably stalled. A mind imagining rigid charts soon runs dry of versatile representations.<\/p>\n<h4 id=\"6640\" name=\"6640\"><strong>Summary<\/strong><\/h4>\n<figure id=\"d003\" name=\"d003\">\n<p><canvas height=\"28\" width=\"75\"><\/canvas><img decoding=\"async\" data-src=\"https:\/\/cdn-images-1.medium.com\/max\/640\/1*4rPyILOvL7XvS_0B8lmBLA.png\" src=\"https:\/\/cdn-images-1.medium.com\/max\/640\/1*4rPyILOvL7XvS_0B8lmBLA.png\" \/><\/p>\n<\/figure>\n<p id=\"974d\" name=\"974d\" style=\"text-align: center;\">Grammar of Graphics: A layered approach to elegant&nbsp;visuals<\/p>\n<p name=\"974d\">We&rsquo;ve looked at the fundamental building blocks for a flexible presentation of data. The real power of this concept lies in uncaging your data from the confines of monolithic charts and setting them free, to tell their own expressive story.<\/p>\n<p id=\"877e\" name=\"877e\">Though many visualization tools today don&rsquo;t adopt a grammar of graphics approach in its entirety, that seems to be the way forward. Meanwhile there are opportunities for people to start putting this to practice. This is so important that it must be made mandatory education for anyone working with data, whether it is analysts, designers, data scientists or journalists.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Look at the fundamental building blocks for a flexible presentation of data. The real power of this concept lies in uncaging your data from the confines of monolithic charts and setting them free, to tell their own expressive story. Though many visualization tools today don&rsquo;t adopt a grammar of graphics approach in its entirety, that seems to be the way forward. Meanwhile, there are opportunities for people to start putting this to practice. This is so important that it must be made mandatory education for anyone working with data, whether it is analysts, designers, data scientists or journalists.<\/p>\n","protected":false},"author":315,"featured_media":2807,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"content-type":"","footnotes":""},"categories":[187],"tags":[94],"ppma_author":[1994],"class_list":["post-874","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-bigdata-cloud","tag-data-science"],"authors":[{"term_id":1994,"user_id":315,"is_guest":0,"slug":"ganes-kesari","display_name":"Ganes Kesari","avatar_url":"https:\/\/www.experfy.com\/blog\/wp-content\/uploads\/2021\/05\/Ganes_Kesari-150x150.jpeg","user_url":"http:\/\/gramener.com","last_name":"Kesari","first_name":"Ganes","job_title":"","description":"Ganes Kesari is the Co-founder and Chief Decision Scientist at <a href=\"https:\/\/gramener.com\/\">Gramener<\/a>, a data science company that helps organizations present data insights as stories. He advises executives on data-driven leadership and helps organizations adopt a culture of data for decision-making. He is a TEDx speaker and Contributor to Forbes and Entrepreneur. Find his latest work <a href=\"https:\/\/gkesari.com\/\">here<\/a> and reach out to him on  <a href=\"https:\/\/www.linkedin.com\/in\/gkesari\/\">LinkedIn<\/a>, where he shares insights regularly."}],"_links":{"self":[{"href":"https:\/\/www.experfy.com\/blog\/wp-json\/wp\/v2\/posts\/874","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.experfy.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.experfy.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.experfy.com\/blog\/wp-json\/wp\/v2\/users\/315"}],"replies":[{"embeddable":true,"href":"https:\/\/www.experfy.com\/blog\/wp-json\/wp\/v2\/comments?post=874"}],"version-history":[{"count":1,"href":"https:\/\/www.experfy.com\/blog\/wp-json\/wp\/v2\/posts\/874\/revisions"}],"predecessor-version":[{"id":6276,"href":"https:\/\/www.experfy.com\/blog\/wp-json\/wp\/v2\/posts\/874\/revisions\/6276"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.experfy.com\/blog\/wp-json\/wp\/v2\/media\/2807"}],"wp:attachment":[{"href":"https:\/\/www.experfy.com\/blog\/wp-json\/wp\/v2\/media?parent=874"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.experfy.com\/blog\/wp-json\/wp\/v2\/categories?post=874"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.experfy.com\/blog\/wp-json\/wp\/v2\/tags?post=874"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/www.experfy.com\/blog\/wp-json\/wp\/v2\/ppma_author?post=874"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}