D3.js 可视化大量类别的最佳方法

D3.js 可视化大量类别的最佳方法,d3.js,highcharts,data-visualization,D3.js,Highcharts,Data Visualization,我有大量的类别和数量值,我必须在web应用程序中进行可视化比较。无法将这些类别组合在一起,它们彼此完全独立,并且具有相当大的价值差异。。。有些人以数百计,有些人以百万计 从视觉上看,有什么好的方式来展示这一点吗?我正在使用Highcharts并查看D3来呈现这些数据,然而,最大的问题是如何在保持视觉清晰度和上下文的同时,将所有这些数据整合到webapp中的某个区域 提前感谢使用类似标记云的方法怎么样?类别越大,值越高?参见D3,Highcharts适用于此类表示。你对实施的想法是什么…比如你正在

我有大量的类别和数量值,我必须在web应用程序中进行可视化比较。无法将这些类别组合在一起,它们彼此完全独立,并且具有相当大的价值差异。。。有些人以数百计,有些人以百万计

从视觉上看,有什么好的方式来展示这一点吗?我正在使用Highcharts并查看D3来呈现这些数据,然而,最大的问题是如何在保持视觉清晰度和上下文的同时,将所有这些数据整合到webapp中的某个区域


提前感谢

使用类似标记云的方法怎么样?类别越大,值越高?

参见D3,Highcharts适用于此类表示。你对实施的想法是什么…比如你正在寻找多少数字。我们已经看到在一个页面上有超过20个数字的web应用程序,比如FollowerWonk,它在一个页面上使用了超过25个数字

然而,就其提供的选项而言,D3是非常广泛的。看这个。你无法用高图看到这些。A可能是最好的,因为它有效地利用了空间,并且很好地表示了大小。矩形区域在视觉清晰度方面不如位置或长度好,但比圆形区域、单词区域或角度好

在本例中,颜色是随机的,但可以基于另一个变量


如果您对“大”的定义小于100左右,则可以分别使用点图或条形图的位置或长度。

我更喜欢类似标记云的方法。对于您的数据集,最好使用具有类似缩放功能的标记云。我想不出一个现有的解决方案来解决这个问题,但是如果没有任何形式的缩放,您的小值可能最终变得不可读(请参阅@xan的答案)。巨大的值会放大到非常大的范围(并且会使小部件出血),从而不会干扰视图。

什么是“大数字”?20,200,2000?你有模型吗?你的数据有多大?@Maz你有没有从highcharts查过甜甜圈图表?@SebastianBochan最大的数字是几百万,最小的只有几百。很多人被吸引到了低端。它们应该是我们系统中数据的表示,其中所有数据都应该(必须)具有可视性,因此,像推动需求的人所指出的那样,将其置于模糊状态的图表是“不好的”。您计划如何在小范围内将百万的值可视化?数据应该分组还是什么?差别很大,正如@Maz所规定的。树状图中的节点可以在同一级别上有不同大小的子节点。是的,值差异很大,这意味着通常有一个块控制整个树状图,并且由于这种空间控制,您无法看到大量的块。通常情况下,可视化能够公平地表示事物是一件好事,因此,如果它的值大10000x,那么它的表示形式也是如此。但是,您可以通过首先执行一些转换(例如日志转换)来提供一些视觉清晰度并保持智力清晰度。+1我正在考虑这个…但找不到任何选项。然而,视觉需要根据目标用户的知识进行设计。基于日志的转换对基本用户没有用处。你是怎么想的@xan@KhushalDave我不喜欢面积或长度的视觉效果,因为没有自然的0。即使你设置了一些人造地板,比如本例中的1,你仍然会丢掉我们眼睛所做的大部分免费视觉处理,并要求用户做更多的脑力劳动。尽管如此,根据问题的参数,必须给出一些东西:屏幕空间、完整性、视觉清晰度、简单性。。。