草庐IT

d3-tooltips

全部标签

javascript - 为什么在维度变量中无法识别 .domain、tickFormat 和 tickValues? (d3,平行坐标)

我正在使用d3.js创建一个平行坐标图,但我很难按照我的意愿格式化轴标签。例如,我的轴之一“缓冲液浓度”绘制在对数刻度上,我通过维度变量指定了它,就像这样。vardimensions=[...{key:"b.Conc",description:"BufferConcentration",type:types["Number"],scale:d3.scale.log().domain([.1,100]).range([innerHeight,0]),tickValues:[.1,.2,.4,.6,.8,1,2,4,6,8,10,20,40,60],tickFormat:d3.format

javascript - 使用 Cypress.js 测试 D3.js 拖动事件

我有一个使用d3-zoom的SVG对象用于缩放和平移功能。它工作完美,但当我开始使用Cypress.js进行集成测试时,问题就出现了。.我尝试在svg元素上使用标准鼠标事件来模拟拖动行为:cy.get('svg').trigger('mousedown',{which:1,force:true}).trigger('mousemove',{position:'left'}).trigger('mouseup',{position:'left',force:true});上面的例子取自Cypressdraganddroprecipe,它会在nodrag.js文件中产生以下错误:canno

javascript - 如何使用 D3 访问对象数组?

我有一个D3图表,我试图在其中解析内联JSON格式的数组,而不是从外部加载数据。而不是做这样的事情:d3.json("data/tsx.json",function(error,data){data.forEach(function(d){d.dateOrig=d.date;d.date=parseDate(d.date);d.close=+d.close;});我只想像这样解析内联JSON格式的数组:vardata=[{"date":"1-May-13","close":58.13},{"date":"30-Apr-13","close":53.98},{"date":"27-Apr

javascript - 使用 d3 为传单创建密度和值(value)热图层

我想用d3在传单map之上实现一个热图层。我有大约2-3k个数据点。我的数据格式如下:[{lat:..,lon:..,value:..},{lat:..,lon:..,value:..},...]理想情况下,我想在基于值的热图和基于点密度的热图之间切换。我还需要能够动态更新数据。从视觉上看,我的目标是这样的:我知道传单有一个coupleofheatmapplugins,两者似乎都不活跃。Heatmap.js最接近我需要的。但是,它似乎没有维护,文档与源代码不一致,而且运行速度太慢。我已经广泛使用d3,如果可能的话,我更愿意将它用于热图层。周围有一两个方block(例如thisone),

javascript - 放大时 D3 轴标签变得过于细粒度

我正在尝试创建一个轴函数,其刻度/标签是动态的,这意味着它们会自动隐藏/显示。但最重要的是,我希望在某个缩放级别停止渲染更多刻度/标签。这是一个示例:首先,轴显示年份,然后当您放大时,刻度变为月份,当您进一步放大时,它显示天数(即,12月28日)。除了我想限制d3以便当缩放比月份更远时,它不再呈现任何刻度,因为月份是我想要的最小单位。我有几个例子,如果组合起来就是我想要的,但我不知道该怎么做。此外:我添加了.tickFormat,因为我想显示每个价格变动以具有缩写的月份格式。示例1:http://jsfiddle.net/GGYKL/varxAxis=d3.svg.axis().sca

javascript - 在 d3 中缩放投影是什么意思?

我知道在D3中,尺度是从输入数据值(域)到输出数据值(范围)的数学映射。我知道我可以设置一个比例尺,将来自域的输入映射到一个范围,如下所示:varscale=d3.scale.linear().domain([100,500]).range([10,350]);scale(100);//Returns10我知道一旦设置了比例,就可以使用它来缩放属性,如下所示:.attr("cx",function(d){returnscale(d[0]);//Returnsscaledvalue})但是,在Bostock的mappingtutorialscale的使用有点不同。无论墨卡托投影返回什么,

javascript - D3 非连续日期域在 X 轴上产生间隙

我想绘制一些不连续的时间序列数据(周末、节假日等的日期间隔)。这是每日数据。数据看起来像这样:date,value1/2/15,109.331/5/15,106.251/6/15,106.261/7/15,107.751/8/15,111.891/9/15,112.011/12/15,109.251/13/15,110.22...所以我定义了我的x和y比例:varx=d3.time.scale().range([0,width]);vary=d3.scale.linear().range([height,0]);并根据我的源数据设置域:x.domain(d3.extent(data,f

javascript - D3.js:折线图 - 工具提示和悬停垂直线

我一直在研究使用D3.js构建的交互式折线图。悬停一次我希望工具提示显示为一条垂直线。垂直线很好,但是,我遇到了与工具提示相关的问题。工具提示位置不在图表上,我只得到第一个数据元素。这是我的代码:margin={top:20,right:20,bottom:20,left:50};varwidth=Math.max(250,Math.min(700,d3.select("#content").width-margin.left-margin.right)),height=500;varvis=d3.select("#line_chart").append("svg").attr("wi

javascript - 可以在 d3.js 中使用固定圆圈大小的圆包布局吗?

这个圆包布局示例(http://bl.ocks.org/4063269)非常适合我正在处理的项目,但是它会相对于彼此调整所有圆圈的大小:有没有一种简单的方法可以为每个圆指定固定的半径?我已经搜索了源代码、示例、google和stackoverflow,但似乎找不到任何有用的东西。圆的准确大小对我来说很重要。 最佳答案 这是可能的,也是简单的事情。第一个答案是准确的,但我认为我的答案更简单、更明确,所以我也附上它。请看这个例子:jsfiddle当你按下“Constant”按钮时,你会看到这样的东西:关键代码行是这样的:pack.val

javascript - 使用 d3.js 的六 Angular 网格

我目前正在尝试使用d3.js创建一个六Angular网格和hexbinplugin对于d3.js.我遇到的问题是我的网格中总是有空六边形或整行空行,而不是所有六边形都很好。有什么办法解决这个问题吗?Mycode:varmargin={top:80,right:20,bottom:50,left:80},width=$(window).width()-margin.left-margin.right,height=$(window).height()-28-margin.top-margin.bottom;varpoints=[];for(vari=0;i 最