我使用dc.js制作一个简单的仪表板。我的数据由五列组成,date
,node
,type
,variable
和value
。它结合了资源监控数据和事件。它们在变量列中定义,类别为cpu,hd,int,mem和event。对于资源,类型列是NA,以及详细说明事件类型的特定字符串。值列对应于特定时刻的某个特定资源的编号,如果该行对应于某个事件,则为1。
话虽如此,我想绘制一个散点图,其中x轴上的日期和y轴上是否存在事件,但我还没有设法做到这一点。我担心这与错误理解crossfilter有关。我对如何编码维度非常有信心,我有这个:
var eventDim = ndx2.dimension(function(d){
if (d.variable=="event"){
return [d.Date.getTime(),d.type];
}
});
但是我无法理解如何创建组来做我想做的事情以及我必须将值作为参数传递给散点图以绘制我想要的内容。
任何帮助都将不胜感激。
提前致谢。
答案 0 :(得分:0)
为维度指定的函数应仅返回要在该维度中使用的键。多键/数组键往往不能很好地工作,所以最好只使用日期而不是将它包装在数组中,除非你真的需要类型作为键的一部分。
我也不会尝试过滤那里的数据。在行不是事件的情况下,您将返回undefined
,这往往不会很好地排序,也不会跳过行。
相反,我建议使用reduceSum创建组,传递一个函数,对于非事件返回0,为事件返回1。这样您就可以计算每个日期的事件数量。
这只是一个开始。希望它有所帮助!