NHacker Next
  • new
  • past
  • show
  • ask
  • show
  • jobs
  • submit
Circos – Circular Visualization (circos.ca)
inciampati 105 days ago [-]
It's a nice visualization system when you have a lot of very long one-dimensional things with nonlinear relationships. This is super common in genomics but in principle could be applied many places.

That said, circos plots are sort of cliche in genomics and I do see people tending to move away from them.

It suffers from an effect of having too many things all together, all at once, layered in ways that sometimes make it difficult to compare. This is especially true when you have data tracks that are circularly laid out around the plot.

aorth 105 days ago [-]
Came to say something similar. I've been installing and updating Circos on our HPC cluster for bioinformatics users for over ten years. It was really popular in the early and mid 2010s!
mbreese 105 days ago [-]
I have used circos plots many times in the past (genomics). They make for very pretty figures. But, like you said, the major problem with them is that they are difficult to accurately interpret. They are used often to compare whole genome rearrangements, but the resolution has to be reduced to so much that you just can’t use them quantitatively. They are useful for qualitative comparisons, but it really suffers when you need to show details.
a_bonobo 105 days ago [-]
Yes, but they are pretty.

Case in point: the maize genome Circos plot popped up in Jurassic World, they just overlayed an image of a Triceratops https://circos.ca/images/mastheads/

tetris11 104 days ago [-]
Yep, if you want to compare clusters from sample A with clusters from sample B, then it's just easier to use a sankey diagram, especially for time-series data.
munificent 105 days ago [-]
I've seen these circular plots a number of times and I've never once found them to illuminate the underlying data, even a little bit.
esafak 105 days ago [-]
Maybe it is because you need to become used to them? I do not find them informative either.
risenshinetech 104 days ago [-]
I came here to say the same thing. What insight do these diagrams provide? They always struck me as a useless but flashy visualization that you would put in front of your company to make people believe Important Work is happening inside.
dangets 105 days ago [-]
These types of graphs are also possible using D3.js. The "Chord diagam II" example references Circos implementation - https://observablehq.com/@d3/chord-diagram/2?intent=fork
photonthug 105 days ago [-]
The same guy apparently made https://hiveplot.com/
runlaszlorun 105 days ago [-]
Interesting link. I can’t speak to the informational value of those hiveplot charts, but an interesting piece from the author on the merits of different network visualization approaches.
anigbrowl 105 days ago [-]
This is highly relevant to my interests, thanks
diekhans 105 days ago [-]
Circos is useful when the data is sparse and quickly becomes extremely time-consuming to near-impossible to interpret. The most you can say is "wow, there is a lot going on".

I know in five seconds if a Circos plot is worth looking at.

robbles 105 days ago [-]
Doesn't this suffer from similar issues to a pie chart?

e.g. https://scc.ms.unimelb.edu.au/resources/data-visualisation-a...

I'm kinda suspicious that any data visualization that uses a circle is going to be hard to draw meaning from.

ma2t 105 days ago [-]
Yes and no. When trying to show quantitative data in terms of areas or angles, then you are spot-on: same issues. But these plots, or chord diagrams more generally, are often used to show relationships (like translocations, inversions or duplications in genomes) in context of other landmarks. This use is common and less troublesome. A real problem with Circos plots is that it's so tempting to keep adding additional tracks of "information" that plots get ridiculous. It becomes like staring at the Voynich manuscript: uninterpretable but so compellingly pretty it must mean something.
bee_rider 105 days ago [-]
Are pie charts bad or just misused?

They aren’t good at measuring small quantities. But it is easy to see 1/4 or 1/2 of a circle. And it is easy to see if something is a straight line, 90 degree, or a little more or less than either of those.

Compared to a bar graph, it seems a little easier to spot that one quantity is, like, half of another. And it is easier to visually sum of a collection of quantities, on a bar graph this is a major pain (unless it is stacked of course but that’s another type of graph).

mmastrac 105 days ago [-]
I really struggle to understand most of the diagrams on this page without context. I suspect it's a lot more useful if you spend time swapping in the overall context of a diagram, after which you can visually pattern match. Without context, it's just pretty noise to me, IMO.
cedricbonhomme 105 days ago [-]
I used Circos quite a lot back in time. It's written in Perl. I was working on a Python visualization tool for analyzing the relationships between different IP, from network traffic capture:

https://github.com/cedricbonhomme/IP-Link

(there is a link to the documentation with some nice chord diagrams.) This one is quite impressive: https://github.com/cedricbonhomme/IP-Link/blob/master/docs/_... nut not easy to read !

motohagiography 105 days ago [-]
radial dendrograms are great for looking at differences between clusters of relationships in trees. thanks for this tool, making viz tools accessible will refine their use cases. one of the challenges with viz is matching the message with the viewer.

re some of the viz comments here, most sankey diagrams can be pie charts (any one with less than a few nested categories) and most people who make pie charts don't reason about trees so all the junk sankey diagrams that flooded in after the birthday party chart aren't a reflection of their use or value.

messages I've used viz for in the past were to solve problems like:

- these things are similar and different (heatmap)

- this is a bounded domain (digraph/ontology)

- these things are related, but only relative to these other things (graph clusters, radial/linear network diagram, boxes+lines/nested boxes)

- the complexity is more here than there (graph clusters)

- the taxonomy hides an inconsistency or gap (sankey diagrams)

- either everybody sees this or nobody does (graph clusters)

- these variations cause combinatoric explosion (sankey diagram)

- this is a hierarchy (dendrogram, radial dendrogram)

- these are categories of things (dendrogram, radial dendrogram)

- these things are the same (heatmap)

- start with these to have the most effect on those (cluster graph)

- solutions are in the form of this grammar (sankey diagram)

- these things happen in order (state machine/flow chart, gantt chart)

- these things happen together (gantt chart)

The statements may seem naive, but when you're working on a viz, you have to think about who it is for and whether it is the right representation and whether the message is valuable. I've made a lot of viz mistakes and they came down to not framing one of these messages correctly or misunderstanding how telling someone this would make them feel. the radial diagrams are pretty, and very useful for showing contrast between patterns and density of relationships.

lbeltrame 105 days ago [-]
I don't get the fad with circos plots. At least in genomics, they offer a high density of information but unfortunately at the price of hard if not impossible interpretation. Like the systems biology papers of old, showing beautiful dense graphs, but with little room for biological interpretation. In addition, circos is quite... peculiar as an application, in particular its quirky configuration file format, which is half ini like and half XML or HTML like. Last I looked at it, about a decade ago, there weren't any APIs to create plots programmatically.
105 days ago [-]
Uehreka 104 days ago [-]
This looks neat, but as a dataviz person who works on the web, my first question (which I couldn’t find an answer to, though I was skimming) is why would I use a special-purpose tool for these kinds of charts when D3 already supports these kinds of charts pretty thoroughly, allows me to update data in realtime and supports animation. Plus D3 can render to either SVG or canvas, it even supports offline rendering for creating vector-based charts for print purposes.
dolmen 104 days ago [-]
The Circos authors invented those charts. D3 got another implementation later.

https://genome.cshlp.org/content/early/2009/06/15/gr.092759....

Blahah 104 days ago [-]
Circos.js uses d3 and works great with other things in the ecosystem. You customise it with idiomatic d3.
Vaslo 105 days ago [-]
Just feels like an overloaded chart where you can pick out maybe one to two patterns that are useful, similar to a pie chart showing maybe one to two chunks that overwhelm.
zazaulola 105 days ago [-]
These charts remind me of astrologers' natal charts.
anigbrowl 105 days ago [-]
Longtime fan of this project. Genomics is where the interesting UI design in science is at, and it's quite useful for others things outside of genomics. Most dashboards are garbage by comparison.
sumnole 105 days ago [-]
One of my favorite circular data viz plots is the polar diagram. It's a simple plot but leads to some pretty aesthetic and easy to read results.
breck 105 days ago [-]
Interesting.

Does anyone have a link to a particularly amazing circos chart that demonstrates the kind of story that it is best at conveying?

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact
Rendered at 19:55:29 GMT+0000 (Coordinated Universal Time) with Vercel.