Looks great! The link to examples (https://vega.github.io/examples) 404s.
Sent from my iPhone > On 17 Dec 2018, at 20:41, Christopher Small <metasoar...@gmail.com> wrote: > > > Greetings! > > I'm happy to announce today the release of Oz 1.4.0. > > https://github.com/metasoarous/oz > > If you're on the Slack #datascience channel, you may have already caught wind > of some earlier versions. But in the interest of introducing it more broadly, > I'm posting an overview here for those of you who aren't familiar. If you are > familiar, you may still wish to scroll down to the bottom as there are some > new features available in the latest release. > > > Vega & Vega-Lite > > Oz is based on the fantastic Vega & Vega-Lite data visualization JS > libraries, and so to really understand what Oz has to offer, it's best to > start here. Vega & Vega-Lite are based on the seminal Grammar of Graphics, an > approach to data visualization which emphasizes writing declarative > descriptions of how properties of data should translate to aesthetic > attributes of a visualization. This approach guided the design of the R's > popular ggplot2 library, and has since influenced numerous libraries in other > languages. > > Vega & Vega-Lite take this vision further in two important ways: > In Vega & Vega-Lite, data visualizations are described using pure data. This > makes it more declarative, and confers all the benefits we know and love > about data-driven programming in Clojure. For instance, you can send a chunk > of Vega or Vega-Lite data over the wire from one program to another > effortlessly (as Oz does), and load it up in another process without having > to worry about the security concerns of executing someone else's code. The > bottom line is that Vega & Vega-Lite are philosophically and technically > compatible with "the Clojure way" (IT'S. JUST. DATA.). > Vega & Vega-Lite take the Grammar of Graphics one step further by introducing > a Grammar of Interaction. You can declaratively describe the addition of > controls (dropdowns, checkboxes, etc) and interactive properties of the > visualization itself (click, hover, etc), and use the data from these > interactions to inform other parts of a visualization. For example, you might > highlight a set of points in one part of a visualization, and display summary > statistics about that selection in another. This is facilitated in part by a > general purpose dataflow language as part of the greater spec. > Vega itself is highly customizable and flexible, but somewhat verbose and not > suitable for day to day visualization tasks. Vega-Lite steps in as a somewhat > higher level and more automated flavor which itself compiles down to Vega. I > have been using them together for a better part of a year now, and can say > without reservation that they are amazing. For years I've longed for a > ggplot2 from Clojure, and at long last I've found something that to my > surprise has not only matched, but truly surpassed the standard bearer. In > short, I'm sold. > > If you want to get a better sense of Vega, and Vega-Lite in particular, I'd > recommend this great talk from the creators at the Interactive Data Lab at > the University of Washington in Seattle: > https://www.youtube.com/watch?v=9uaHRWj04D4 > > If you're interested in a (mostly) more philosophical look at Vega & > Vega-Lite, and their connections to Clojure philosophy, I did a little talk > at a local Clojure meetup which you may find interesting: > https://www.youtube.com/watch?v=hXq5Bb40zZY&t=815s > > > Oz > > Oz itself is a very small and focused library, as most of the work falls on > Vega & Vega-Lite. It offers the following features: > A REPL API for for pushing vega and vega-lite data to a browser window over > websockets, for REPL-based data science workflows > Client side vega and vega-lite Reagent components, for more dynamic usage > from ClojureScript apps > A grammar for composing Vega & Vega-Lite together in the context of html as > hiccup, for document and dashboard generation > Plot/document publishing/sharing features via GitHub gists, the IDL's live > vega editor, and the new http://ozviz.io > The last two features in particular are where Oz really brings some > interesting value to the table beyond the role of a minimal wrapper. I have > found the ability to create and quickly share visualizations and scientific > documents from the comfort of my favorite text editor and REPL a godsend. > While the first several years of my programming experience were in notebook > environments (Mathematica, MATLAB, Sage, etc), I now find the experience of > writing and executing code from a web application a burden. Part of my goal > with Oz was to create a viable alternative to this workflow, and so far I've > been very pleased. The last piece to this now in place (the ability to share > hiccup+vega documents via http://ozviz.io), I'm excited to put this work out > more broadly and hear what the community thinks about this approach to the > creation and sharing of scientific documents. > > There are some other updates and improvements which those of you familiar > with Oz may wish to take a look at in the changelog, included updated Vega* > libs, and some smoothing out of the API and UI > (https://github.com/metasoarous/oz/blob/master/CHANGELOG.md). Otherwise, > please see the project README for up to date information on how to use the > library: https://github.com/metasoarous/oz. > > > Thanks for your time! > > Chris > > > -- > You received this message because you are subscribed to the Google > Groups "Clojure" group. > To post to this group, send email to clojure@googlegroups.com > Note that posts from new members are moderated - please be patient with your > first post. > To unsubscribe from this group, send email to > clojure+unsubscr...@googlegroups.com > For more options, visit this group at > http://groups.google.com/group/clojure?hl=en > --- > You received this message because you are subscribed to the Google Groups > "Clojure" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to clojure+unsubscr...@googlegroups.com. > For more options, visit https://groups.google.com/d/optout. -- You received this message because you are subscribed to the Google Groups "Clojure" group. To post to this group, send email to clojure@googlegroups.com Note that posts from new members are moderated - please be patient with your first post. To unsubscribe from this group, send email to clojure+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/clojure?hl=en --- You received this message because you are subscribed to the Google Groups "Clojure" group. To unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.