草庐IT

javascript - D3.js 动画旋转

当我尝试使用D3.js库正确执行旋转动画时遇到问题。问题与我想要旋转元素的点有关。这是我制作的fiddle来展示我的意思(慢动作):http://jsfiddle.net/74mCb/问题的根源似乎在这里:.attr("transform","rotate(-60,150,130)");然后我像这样旋转它:.attr("transform","rotate(40150,130)");我希望针头保持在原位(成为旋转中心),有人可以解释一下我做错了什么吗?谢谢! 最佳答案 这有点难以掌握(我自己并不完全理解)但是D3需要一些帮助来了解如

javascript - d3.js 图中圆圈的随机颜色

这是jsfiddle的链接http://jsfiddle.net/jaimem/RPGPL/2/现在图形中所有的圆圈都显示为红色。是否有一种方法可以在圆圈上显示随机颜色。这是d3.js代码vardata=[{"count":"202","year":"1590"},{"count":"215","year":"1592"},{"count":"179","year":"1593"},{"count":"199","year":"1594"},{"count":"134","year":"1595"},{"count":"176","year":"1596"},{"count":"172

javascript - 带轴和 Angular 3D 旋转

我知道3D旋转在SO和许多其他网站上都有详细的记录,但尽管阅读了无数的解释,我仍然没有弄清楚我哪里出错了。我的背景是艺术和设计,而不是数学和编程,而且我从来不确定我的攻击Angular(没有双关语意)是否正确。我没有粘贴我的糟糕代码的拼凑,而是包括一张描述我的问题的图像。我真正想要的是如何解决它的分步措辞分解。伪代码很有用,但如果有人将我指向正确的方向或指出常见的陷阱,我会学到更多。红色=X轴,绿色=Y轴,蓝色=Z轴Magentavectors=origin-->一些X,Y,Z点洋红色立方体=两个洋红色矢量的端点的平均值(有更好的名称吗?)白色向量=两个洋红色向量的叉积(为显示而扩展,

javascript - D3 折线图,不能用序数刻度编辑刻度数吗?

我之前问过一个关于d3的问题,他们建议我使用序数尺度,这会解决我的问题。它确实解决了我的问题,但我知道我遇到了另一个问题......它画得很好,但我的X轴上全是文字。例如,我想要:1900190419081912...但我得到了:190119021903190419051906。如您所见,这还不清楚。(这只是一个例子,如果只有日期我可以使用另一个尺度)。我看到的每个地方都在谈论axis.ticks(number)。但这不起作用。没有任何反应,我仍然得到相同的结果。我破解了一个结果以在x轴上获得更少的结果:varstr=[];vari=0;while(i但如果我这样做,它会创建一条随机线

javascript - 如何获取 CSS3-3d 转换元素的屏幕位置?

我有一个基于CSS3构建的非常复杂的网站,其中包含html元素3d转换、旋转、翻转、翻转和一般扭曲。我正在尝试找出其中一个元素在屏幕上的位置,但没有找到任何方法。不知道有没有人有什么巧妙的想法。或者,如果有人可以解释-webkit-perspective背后的数学原理,我可以找出位置,因为这是我唯一不确定如何建模的东西。 最佳答案 您是否尝试过使用getBoundingClientRect()?我过去曾成功地使用它来计算已使用transform属性转换的元素的尺寸。 关于javascri

javascript - svg、d3、dagre、dagre-d3 和 graphlib 如何相互依赖?

我使用dagre绘制有向图,但我想了解svg、d3、dagre和graphlib如何相互依赖?基本上,一个停止,另一个开始。我将尝试指出我在有限的理解下可以收集到的内容。svg:(是一种基于XML的矢量图像格式,但基本上它)是一个html标签,您可以使用它绘制圆形、椭圆形、矩形等,然后使用g元素对两个或多个形状进行分组并应用转换等。d3:d3是一个javascript库,它基本上允许您将数据与svg结合起来。因此,您不必每次都编写svg标签,您基本上可以使用编程、循环、数据等来创建svg代码。现在谈到dagre,dagre-d3和graphlib是我遇到的问题假设我上面说的一切都有意义

javascript - 同一页面上的多个脚本版本 (d3.js)

我需要在同一个页面上有多个版本的javascript库。如果不手动重构一个版本以避免命名冲突,我该如何实现这一目标?关于如何使用Jquery执行此操作的示例很多(example)。然而,这似乎依赖于jQuery的优点。我如何为任意脚本执行此操作?更多细节:我正在使用d3.js,我正在插入其他人使用d3制作的可视化效果。问题是,其中一个可视化项需要一个版本的d3,另一个需要更新的版本。这两个可视化应该在同一页面上可用-用户通过单击缩略图交换显示哪个可视化,然后使用js隐藏一个可视化并构建另一个可视化。因此,似乎交换脚本而不是以无冲突的方式加载两者也是一种选择。

javascript - 如何确保 D3 在 javascript 运行之前完成加载多个 CSV?

我正在使用D3将其他CSV文件列表的CSV加载到javascript中。当我运行以下代码时,employees数组在代码中到达它时仍然是空的。有没有正确的方法来确保D3在javascript继续之前完成加载数据?varemployees=[];//Retrievethefilelistofallthecsvsinthedatadirectory,thenrunacallbackonthemfunctionretrieveList(url,callback){d3.csv(url,function(data){callback(data);})}//Parseafilelist,andt

javascript - d3 javascript中的变量范围

我想使用以下代码获取全局变量中的数据:vardata;d3.json("file.json",function(json){data=json;console.log(data);//defined});console.log(data);//undefined但问题是我只是在d3.json函数中定义了数据变量,但它是未定义的。我该如何解决这个问题?谢谢 最佳答案 因为d3请求(如d3.json)是异步的,所以最好将所有依赖于外部请求的代码包装在请求回调中,确保此代码可以访问数据执行前。FromtheD3docs:"异步加载数据时,

javascript - d3.scaleBand 是如何工作的?

如何从thisexample制作行varx=d3.scale.ordinal().rangeRoundBands([0,width],.05);使用d3.scaleBand在d3v4中工作? 最佳答案 在D34.x中,ordinal.rangeRoundBands已替换为band.rangeRound(因此,不再有rangeRoundBands)。除此之外……Thenewband.padding,band.paddingInnerandband.paddingOutermethodsreplacetheoptionalargumen