草庐IT

javascript - D3 力导向布局的基础知识

我正在使用d3.js进入令人兴奋的力导向布局世界。我掌握了d3的基础知识,但我无法弄清楚设置力导向布局的基本系统。现在,我正在尝试创建一个简单的布局,其中包含一些漂浮在中心的不相连的气泡。很简单吧!?创建了正确的圆圈,但没有任何反应。编辑:问题似乎是force.nodes()返回初始数据数组。在工作脚本中,force.nodes()返回一个对象数组。这是我的代码:$(function(){varwidth=600,height=400;vardata=[2,5,7,3,4,6,3,6];//createchartvarchart=d3.select('body').append('sv

javascript - 如何以编程方式触发 D3 拖动事件?

所以我有一些数据与拖动事件监听器绑定(bind):myNodes.enter().append("svg:g").call(d3.behavior.drag().on("drag",function(){console.log(d3.event.dx,d3.event.dy);}));现在我想以编程方式在某个节点上调用这个onDrag函数。我确实知道通过做标准事件也是可能的aNode.on("click")()//worksaNode.on("drag")()//doesn'twork有什么办法吗?谢谢。 最佳答案 将回调(您传递给

javascript - d3 似乎假设我知道 csv 的列名?

我有生成的csv文件,我正在尝试将它们加载到d3中以绘制它们。列名是基于数据的,所以我基本上无法提前知道它们。通过测试,如果我知道列的名称,我就能够加载这些数据并将其绘制得很好而且很好......但我不知道我的用例。我如何在d3中处理这个问题?我似乎无法在网上或文档中找到任何帮助/引用此信息的内容。当我从d3.csv登录到控制台数据[0]时,我可以看到有两列和为它们读取的值,但我不知道如何在不知道的情况下任意引用数据的第1列或第2列提前列的名称。一般来说,我想避免这种情况,因为我知道我的时间戳在第1列中,而我的数据在第2列中,如果这有意义的话。编辑,我的答案使用d3.entries来帮

javascript - 将 Javascript 对象传递给 Web Worker

我有一个这样的对象:functionA(id){this.id=id;}A.prototype.getId=function(){returnthis.id;}它作为文件(“objects.js”)包含在html页面中,也包含在带有importScript(“objects.js”)的网络worker中。现在,我使用“vara=newA()”在html页面中创建一个A实例,并使用“postMessage()”将其发布到WebWorker。有趣的是,在worker中它仍然具有属性“id”及其值,但原型(prototype)函数丢失了。我猜原因可能是原型(prototype)函数“绑定(b

javascript - Web Audio API,从声卡获取输出

可以吗?如果是这样,非常感谢有关该主题的任何信息。(如果不使用WebAudioAPI,是否有其他一些API可以让我实现此目的?) 最佳答案 德里克是对的。如果你有一个realtek卡(我不知道其他制造商的支持)你将它设置为立体声混音,并将立体声混音设置为默认麦克风。然后,您可以使用navigator.getUserMedia创建一个与您的麦克风链接的源节点。谷歌搜索,您会找到它。我刚刚为你做了一个fiddle:Audiofromsoundcard编辑:链接现在转到正确版本的jsfiddle(另一个有错误的条)。

javascript - 在 x 轴上带有范围选择器的 d3 条形图(如 dygraphs)

是否可以在d3中生成条形图并使用类似工具或功能,如dygraphs(this)中的工具或功能用于范围选择器?我想在x轴上放大和缩小时间。谢谢! 最佳答案 是的,您可以使用d3.brush来创建此功能。这是d3的创建者关于如何使用它的示例-这正是您想要的(可缩放条形图):http://bl.ocks.org/mbostock/1667367 关于javascript-在x轴上带有范围选择器的d3条形图(如dygraphs),我们在StackOverflow上找到一个类似的问题:

c# - 模型从 ASP.NET Web API 中的 URI 绑定(bind)到字典

请引用MVC中的此链接:http://aspnetwebstack.codeplex.com/discussions/351011我在模型绑定(bind)方面遇到了问题。我从JavaScript向名为“/api/products”的API端点发出GETAjax请求,传入一些参数,包括分页和排序作为查询参数。这是完整的URI:http://localhost/api/products?page=1&count=10&filter[name]=Test1&filter[price]=10&sorting[name]=desc在服务器端,我有一个WebAPIController从URI接受这

javascript - Shoutcast + Web Audio API CORS 问题

我有一个问题,我已经研究了一段时间,但没有真正的进展。我目前正在尝试将我的Shoutcast流加载到我的WebAudioAPI上下文中。我认为它会违反CORS,我是对的。我尝试通过XHR请求,然后再次通过将音频元素加载到脚本中。它与音频元素一起工作,但在尝试将其加载到脚本中时死了。似乎我唯一的选择是尝试以某种方式将CORSheader添加到我的Shoutcast正在服务的流中。我不知道该怎么做,也没有在网上找到资源。如果有人能给我一些建议,我将不胜感激!varaudioCtx=new(window.AudioContext||window.webkitAudioContext)();v

javascript - D3中不可视化的平行坐标多维数据

我正在使用d3.js处理平行坐标图,我正在尝试从外部json文件中绘制一些多维数据。json文件中的数据结构如下:[{"timestamp":1437571117.035159,"dimension":10,"value":[{"value":0.13347661474528993,"label":"A"},{"value":0.8677079004784608,"label":"B"},{"value":0.7757451827314333,"label":"C"},{"value":0.9614725817942508,"label":"D"},{"value":0.5259754

javascript - 您如何使用 Web Audio API 测量两种声音之间的差异?

我正在尝试使用分析器节点和getByteFrequencyData()来测量两种声音之间的差异。我认为通过对每个频率区间的差异求和,我可以得出一个数字来表示这两种声音的差异程度。然后我就可以改变声音并再次测量数字,看看新声音是否与以前有或多或少的不同。getByteFrequencyData()是否完全包含声音的表示,或者我是否需要包含其他数据来限定声音?这是我使用的代码:varSpectrogram=(function(){functionSpectrogram(ctx){this.analyser=ctx.createAnalyser();this.analyser.fftSize