Bookmark with submit Tutorial%3A%20Building%20a%20Snowflake%20Graph%20from%20XML reddit

Tutorial: Building a Snowflake Graph from XML

I just posted this new tutorial on

JSViz 0.3.3 includes a few examples to help you get started. In this tutorial, I'm going to go over one of them. We'll create a Snowflake Graph from the contents of an XML file. You can find the example source, with comments based on this tutorial in the 0.3.3 Distribution.

Here's the final product

1) Start with a new HTML file

Add appropriate JSViz imports and an empty "init()" function body:

Continue reading this post at

Bookmark with submit JSViz%200.3.3%20Released reddit

JSViz 0.3.3 Released

The website is now available but I'll be cross-posting big news here to keep subscribers and search traffic informed:

JSViz 0.3.3 is now available. This release includes two major features:

Snowflake Model is an updated implementation of the "Tree Model" offered in JSViz 0.2. This is a geometric model, offering superior speed to Force Directed layouts, but only capable of representing hierarchical data (sorry, no circuits).

An Example Snowflake Graph

Layouts offer a simplified interface to the core JSViz libraries. New projects can now be created with minimal code and simple configuration. Additional examples, using Layouts:

An Example Force Directed Graph with Data Loader
An Example Force Directed Graph with Randomly Generated Data

You can download the full source as a single ZIP archive or browse individual files on the Download page

I'll follow up with tutorials shortly.

Bookmark with submit More%20Music%20Mashing reddit

More Music Mashing

I've received a lots of great comments and e-mails about the music recommendations demo I posted a week or so ago. But a number of you mentioned that the recommendations were a little funny. Questions and observations so far:

  • Theivery Corporation is the center of the universe! Every album ever released is 3 or fewer hops away from a Theivery Corporation album.
  • Why is every album I search for related to Beck? or Moby? or Neil Young? Though I'll point out, the man has been in almost every band that's ever released an album. Seriously, that album by the Back Street Boys and Young is one of my favorites!
  • How is this tool useful if the only related albums to my search are by the same artist?

Right. So ... There's a lesson here:

There's always a little bit of "magic" in a mashup.

The music recommendations demo gets album relationships from's E-commerce API. Similarity is based on buying patterns, which apparently lead to some unexpected or disappointing results. So I decided to try out an alternative.

I worked up a quick mashup using the Audioscrobbler ( API for Artist-to-Artist recommendations. Audioscrobbler uses the listening patterns of it's users to determine relationships. Unfortunately, the images served up with this API aren't especially useful in identifying artists, especially when scaled down. So this demo is currently text-only. If you're interested, the demo could be extended to grab an album image from I tried this and bailed out quickly because it added a lot of latency to the addition of new nodes, but you may be able to cut this down using an image cache.

So give it a try.

Oh, one more thing! These demos don't work so well in ie7. This isn't an issue with the JSViz 0.3.1 API. I'll fix the demos when I have some spare time. Thanks for all the feedback. It's useful in driving this project.

Bookmark with submit Modeling%20Music%20Recommendations%20in%20JavaScript%20with%20JSViz reddit

Modeling Music Recommendations in JavaScript with JSViz

Last week I showed you a tutorial that I put together for The Ajax Experience, where we built a force directed model from the contents of an XML file. Today I'm presenting an example with full source from another tutorial in this talk, where we make a complete, interactive application that models music recommendations using's Similarity API. I'll be covering this example in detail in my talk next week at The AJAX Experience. You may view, download, and modify the source in this example. It's available under a Creative Commons Attribution License.

This application will enable a user to search for music by artist. When the user selects an album, they'll see a graph model reperesenting the album's relationship to similar albums, based on buying history. Here's a screenshot:

Click here to use this example application...

A Note on Aesthetics

Continue reading "Modeling Music Recommendations in JavaScript with JSViz" »

Bookmark with submit Tutorial%3A%20Building%20a%20Force%20Directed%20Graph%20from%20XML reddit

Tutorial: Building a Force Directed Graph from XML

Part of my upcoming talk at The Ajax Experience is, of course, about graph-based data visualizations using JSViz. I've worked up a couple of tutorials using the new JSViz 0.3.1 and I'm sharing abbrieviated versions of them here. Conference attendees should find these posts useful as a recap and additional reference for coding your own apps.

In this first tutorial, we'll introduce the JSViz 0.3.1 API by modeling the contents of an XML file. The model will render in HTML or SVG if it's available. Of course you can take a look at what we're building before we get started:

Screenshot of SVG | Screenshot of HTML | "Live" Example | Hide

Continue reading "Tutorial: Building a Force Directed Graph from XML" »