Code Monkey home page Code Monkey logo

Comments (5)

ReallyNotAHat avatar ReallyNotAHat commented on August 14, 2024

So, a while ago I googled 'high-dimensional data visualization' to see if anyone had a good way to do this.

I didn't come up with anything that fit really well, but I did find an interesting one called an 'arc diagram'. Here's an example: http://deliveryimages.acm.org/10.1145/1750000/1743567/figs/f5b.jpg

I think that something this, but with two columns and the pipes running from one to the other, might work well for an 'overview' type of graphic. guessers on one side and stories on the other. Give correct guesses and incorrect guesses different color pipes, and maybe put a node that expresses the ratio of incorrect/correct guesses as mixture of colors, and it should give a readable overview that only scales in one direction. Stories with lots of lines leading to them were guessed a lot, and people with lots of lines leading from them made lots of guesses. The average color of all the lines would give an indication of how well they guessed/were guessed.

The downside to this is that, while it gives a nice overview, it's rather more difficult to get specific information from. Following each line would be tedious... although tooltips might work? I dunno. If the plot was arranged so that the lines were clearly distinguishable, someone could hover over each one to get who the guesser/story was. This might have its own scalability problems, though.

A collapsible thing under each name/story with specific listings might work, but that's not particularly elegant.

Hopefully this sparks some thoughts for you. This thing has kinda strange requirements, if we want both a good overview and also specific information available at once.

from writeoff.

RogerDodger avatar RogerDodger commented on August 14, 2024

Wow that sounds perfect actually.

You could focus on specific lines by clicking on a guesser/story to dim all the lines that aren't connected to them.

I could also make the lines thicker / thinner depending on the guesser's precision/accuracy. (Discussed in #10.)

from writeoff.

RogerDodger avatar RogerDodger commented on August 14, 2024

Oh even better:

The graph has three columns in it. The first column is guessers, the second is artists, and third is entries. The guess lines pass through the respective vertices to show the guesser, guessed, and entry.

Clicking any vertex will show the lines that pass through it, so you can focus on all guesses pertaining to any guesser (how accurate were they? which did they get right?), artist (how many guesses against me? how accurate? which stories did people most think I wrote?), and story (how many guesses against my story? how accurate? who was most accused of writing this?).

from writeoff.

ReallyNotAHat avatar ReallyNotAHat commented on August 14, 2024

I like the three-column idea. And since the guessers and the guessed columns have the same names anyways, might as make the 'guessed' column simply nodes that line up with the guessers so you don't need to add a bunch more text. If you moved the story names up against the finals/prelims column, You could almost display the guesses information in the space we're currently using for results by just adding the pipes.

Actually, could you make it a collapsible? Put a shrunk column containing the guessed nodes and pipes between the author/story names. Clicking it would vanish the finals/prelims column and expand the pipes/nodes, sliding the story names over for extra space.

(Edit: Second thought, that doesn't work because some authors are listed multiple times in results and not next to each other. /Shrug. A separate listing is likely the sanest way to go, since then authors could be alphabetized.)

from writeoff.

RogerDodger avatar RogerDodger commented on August 14, 2024

I've got a working implementation live on the website now. With the curved lines the visualisation makes the intricacies much clearer. I'm pretty happy with it.

I'm a little concerned for performance reasons that the paint is too complex. The biggest graph on record is https://writeoff.me/event/36-I-Regret-Nothing/fic/results and it's drawing something like a thousand lines. That's probably not too bad, and on my computer it handles it with ease, but if for example phones can't handle it I'll have to add a button or something.

from writeoff.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.