我能够使用github API的v2以JSON格式标记给定语言的所有github存储库,但此版本去年已被弃用.我无法用新的v3找到任何方法.
有任何想法吗?
我试图围绕d3的包布局(http://bl.ocks.org/4063530).
我有基本的布局工作,但我想用新数据更新它.即收集新数据,将其绑定到当前layout.pack并相应更新(更新/退出/输入).
我的尝试在这里(http://jsfiddle.net/emepyc/n4xk8/14/):
var bPack = function(vis) {
var pack = d3.layout.pack()
.size([400,400])
.value(function(d) {return d.time});
var node = vis.data([data])
.selectAll("g.node")
.data(pack.nodes)
.enter()
.append("g")
.attr("class", function(d) { return d.children ? "node" : "leaf node"; })
.attr("transform", function(d) { return "translate(" + d.x + "," + d.y + ")"; });
node.append("circle")
.attr("r", function(d) { return d.r });
node.filter(function(d) { return !d.children; }).append("text")
.attr("text-anchor", "middle")
.attr("dy", ".3em")
.text(function(d) { return d.analysis_id });
bPack.update = function(new_data) {
console.log("UPDATE");
node …Run Code Online (Sandbox Code Playgroud) 我正在使用react-select从 api 加载结果并使用lodash.debounce对查询进行去抖动:
import React, {useState} from 'react';
import AsyncSelect from 'react-select/lib/Async';
import debounce from 'lodash.debounce';
import {search} from './api';
const _loadSuggestions = (query, callback) => {
return search(query)
.then(resp => callback(resp));
};
const loadSuggestions = debounce(_loadSuggestions, 300);
function SearchboxTest() {
const [inputValue, setInputValue] = useState("");
const onChange = value => {
setInputValue(value);
};
return (
<AsyncSelect
value={inputValue}
loadOptions={loadSuggestions}
placeholder="text"
onChange={onChange}
/>
)
}
Run Code Online (Sandbox Code Playgroud)
当我第一次在搜索框中输入某些内容时,它似乎工作正常(查询已去抖动并且建议已正确填充),但如果我尝试输入新值,则会按预期触发第二个提取查询,但建议来自不会显示第二个调用(并且我没有收到 react-select 显示的“正在加载...”消息)。
当我不去抖动呼叫时,问题似乎消失了(对于第一次和任何后续呼叫):
import React, {useState} from 'react';
import …Run Code Online (Sandbox Code Playgroud) 我正在尝试使用phantomjs将svg转换为png图像:
var page = require('webpage').create();
page.evaluate(function() {
var svg = '<svg class="tnt_tracks_svg" width="800" height="180" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/\
xlink"><rect width="10" height="10" fill="red"></rect></svg>';
var src = 'data:image/svg+xml;base64,' + window.btoa(unescape(encodeURIComponent(svg)));
var img = new Image();
img.src = src;
img.onload = function() {
var canvas = document.createElement('canvas');
canvas.width = img.width;
canvas.height = img.height;
var context = canvas.getContext('2d');
context.drawImage(img, 0, 0);
var src = canvas.toDataURL(); // DOM Exception 18!
}
});
Run Code Online (Sandbox Code Playgroud)
但是在调用toDataURL时我得到了一个DOM Exception 18.我在其他类似的问题中看到,如果svg托管在其他域等中,可能会发生这种情况......,但在我的情况下,我提供了svg src!.上面的代码有什么问题?为什么它会触发DOM Exception?
类似的代码在jsfiddle中看起来不错(没有phantomjs,在chrome和FF中测试过).这个幻影示例也使用fabric.js:
page.includeJs("http://cdnjs.cloudflare.com/ajax/libs/fabric.js/1.4.0/fabric.min.js", function () …Run Code Online (Sandbox Code Playgroud) 我正在寻找一个关于如何为饼图调整大小(弧的路径)进行转换的示例.我一直在看这个例子,但我仍然不知道如何修改它以在调整大小上进行转换.到目前为止,我可以通过更改arc对象的outerRadius(和innerRadius)来调整饼图的大小,但是转换没有运气.这是我正在研究的例子.
arc.innerRadius(newInnerRad)
.outerRadius(newOuterRad);
path.transition().duration(500).attrTween("d", arcTween);
function arcTween(a) {
var i = d3.interpolate(this._current, a);
this._current = i(0);
return function(t) {
return arc(i(t));
};
}
Run Code Online (Sandbox Code Playgroud)
有任何想法吗?
javascript ×4
d3.js ×2
svg ×2
transition ×2
canvas ×1
circle-pack ×1
data-binding ×1
fabricjs ×1
github ×1
phantomjs ×1
pie-chart ×1
react-select ×1
reactjs ×1