小编Viv*_*idD的帖子

虚拟内存系统,页表和TLB

我正在敲打头来解决这个问题,甚至无法前进一步,问题是:

考虑以下C程序:

int X[N];
int i;
int step = M; // M is some predefined constant
for (i = 0; i < N; i += step) X[i] = X[i] + 1;
Run Code Online (Sandbox Code Playgroud)

如果此程序在具有4 KB页面大小和64项TLB的计算机上运行,​​那么M和N的哪些值将导致每次执行内循环时TLB未命中?

任何人都可以给我一些提示我该如何解决?

c caching memory-management virtual-memory tlb

2
推荐指数
1
解决办法
7043
查看次数

d3:可选择根据强制布局中的节点内容添加子元素

使用d3中的force布局,我可以愉快地添加节点,例如,一个圆圈的SVG组和一些文本:

var node = vis.selectAll(".node")
    .data(nodes)
    .enter().append("svg:g")
    .attr("class", "node");
node.append("svg:circle")
    .attr("r", 5);
node.append("svg:text")
    .text(function(d) { return d.nodetext });
Run Code Online (Sandbox Code Playgroud)

但是,我想根据节点数据选择向组中添加另一个元素:因此,如果此节点的数据包含"image"属性,我想添加一个新的子元素(svg:image) ).将svg:image添加到所有节点很容易(我只是这样做,因为我已经完成了上面的圆圈和文本).动态更改已创建元素的属性也很容易(通过将函数作为属性的值,text如上所述).我不知道如果数据包含属性,如何添加svg:image子元素.实现这一目标的最佳方法是什么?image

javascript d3.js force-layout

2
推荐指数
1
解决办法
3315
查看次数

饼图上的转换在d3.js中调整大小

我正在寻找一个关于如何为饼图调整大小(弧的路径)进行转换的示例.我一直在看这个例子,但我仍然不知道如何修改它以在调整大小上进行转换.到目前为止,我可以通过更改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 svg transition d3.js pie-chart

2
推荐指数
1
解决办法
5576
查看次数

如何为 D3 圆圈包布局中的每个圆圈着色

以下是 d3js 中的包布局示例:

http://bl.ocks.org/4063530

是否可以控制各个圆圈的颜色?

这是带有颜色的包布局的另一个示例:

http://bl.ocks.org/4063269

在此输入图像描述

您能帮我了解如何将颜色分配给第二张图表中的气泡吗?

javascript colors d3.js circle-pack

2
推荐指数
1
解决办法
8954
查看次数

如何在力布局中改变d3节点之间的距离

我在d3中进行了大量搜索以获取可视化效果。我能够可视化数据库中的数据。现在,我想改变不同d3节点之间的距离。有一个函数force.linkdistance()用于指定节点之间的距离。目前,我要提供100的恒定距离。我想根据数据库中的列来更改每个链接的距离。这是一个数字列。我也附上我的代码。请帮助,如果可以的话。

    var okCounter=0;
var width = 960,
height = 500;

console.log("still ok here:",okCounter++);

var svg = d3.select("body").append("svg")
    .attr("width", width)
    .attr("height", height);
console.log("still ok here:",okCounter++);
var force = d3.layout.force()
    .gravity(.05)
    .distance(100)
    .charge(-100)
    .size([width, height]);
console.log("still ok here:",okCounter++);
d3.json("getdata.php", function(error,json) {
   force
      .nodes(json.nodes)
      .links(json.links)
      .start();
console.log("still ok here:",okCounter++);
  var link = svg.selectAll(".link")
      .data(json.links)
      .enter().append("path")
      .attr("class", "link");
console.log("still ok here:",okCounter++);
  var node = svg.selectAll(".node")
      .data(json.nodes)
    .enter().append("g")
      .attr("class", "node")
     // .call(force.drag);
console.log("still ok here:",okCounter++);
  node.append("image")
      .attr("xlink:href", "http://www.clker.com/cliparts/5/6/3    /a/1194984675331456830utente_singolo_architett_01.svg.med.png")
      .attr("x", -8)
      .attr("y", -8)
      .attr("width", 24) …
Run Code Online (Sandbox Code Playgroud)

javascript d3.js force-layout

2
推荐指数
1
解决办法
6020
查看次数

使用d3.js强制有向图

我已经开始使用d3.js库来制作强制有向图.有人可以告诉我为什么这个代码也在这个网站上提到不起作用?

的index.html

.node {
  stroke: #fff;
  stroke-width: 1.5px;
}

.link {
  stroke: #999;
  stroke-opacity: .6;
}

</style>
<body>
<script src="http://d3js.org/d3.v3.min.js"></script>
<script>

var width = 960,
    height = 500;

var color = d3.scale.category20();

var force = d3.layout.force()
    .charge(-120)
    .linkDistance(30)
    .size([width, height]);

var svg = d3.select("body").append("svg")
    .attr("width", width)
    .attr("height", height);

d3.json("miserables.json", function(error, graph) {
  force
      .nodes(graph.nodes)
      .links(graph.links)
      .start();

  var link = svg.selectAll(".link")
      .data(graph.links)
    .enter().append("line")
      .attr("class", "link")
      .style("stroke-width", function(d) { return Math.sqrt(d.value); });

  var node = svg.selectAll(".node")
      .data(graph.nodes)
    .enter().append("circle")
      .attr("class", "node") …
Run Code Online (Sandbox Code Playgroud)

javascript json graph d3.js force-layout

2
推荐指数
1
解决办法
1720
查看次数

为什么转换会从我的标签中删除文字?

我有一个饼图,我正在尝试转换标签的旋转.出于某种原因,当我添加时transition,文本被删除.我创造了一个问题的小提琴:

http://jsfiddle.net/samselikoff/k69We/

图表呈现但没有标签.在第110行,取消注释该setTimeout功能.一秒钟后,转换将正常工作.

为什么没有setTimeout的转换会破坏标签值?

label transition d3.js

2
推荐指数
1
解决办法
137
查看次数

D3.js强制布局 - 仅显示图形的一部分

早上好,

刚刚从令人敬畏的d3js库开始......

我想只显示一个带有力导向布局的图形的一部分.这个想法是将一个节点声明为"中心",并显示距离该中心节点两个(例如)距离的所有节点,中心节点的邻居和邻居的邻居.如果用户点击其中一个显示的节点,它将成为"新"中心节点,并显示不同的"子图".我想知道是否有一个关于实现这种子图布局的例子,以及是否已经在d3js中实现了某种"节点距离"算法.

非常感谢

马丁

更新:刚刚找到了修改强制布局的示例,该示例说明了如何从强制定向布局添加和删除节点和边.

javascript visualization d3.js force-layout

2
推荐指数
1
解决办法
2317
查看次数

使用Vincent创建多线图

我正在尝试使用Vincent创建一个多线图.

我有一个csv文件,具有以下布局:

,wk1,wk2,wk3,wk4,wk5,wk6,wk7,wk8,wk9
Tom J,97,65,82,65,101,84,79,71,83
Lisa R,95,87,95,65,61,78,93,95,56
Rich F,51,111,50,119,84,77,73,84,60
Anne E,63,68,89,70,95,80,56,75,82
Dan M,83,95,36,115,79,79,65,55,69
Mack W,67,89,72,79,47,64,113,94,33
Run Code Online (Sandbox Code Playgroud)

这是我的代码:

import pandas as pd
import vincent

df = pd.read_csv('weekscores.csv', index_col=0)

lines = vincent.Line(df)
lines.axis_titles(x='WEEKS', y='SCORE')
lines.legend(title='Player')
lines.to_json('line.html',html_out=True,html_path='line_template.html')
Run Code Online (Sandbox Code Playgroud)

这会运行并生成图表,但图表中不显示任何行:

在此输入图像描述

使用.grammar()检查数据我看到每周的得分都是这样的:

{'val': 97, 'col': 'wk1', 'idx': 'Tom J'}
Run Code Online (Sandbox Code Playgroud)

任何协助获得此渲染表示赞赏.

python pandas vega vincent

2
推荐指数
1
解决办法
1420
查看次数

将文本从json分成几行,用于在D3强制布局中显示标签

我是d3.js的新手和编码.这是我的问题:

我试图找到一种方法来打破行中强制布局对象的长显示名称.

我希望能够确定在哪里打破这些行,我猜这是可以从json文件中完成的事情.

我知道已经有类似的问题已经提出,但我找不到放置代码的位置或为什么我以前的尝试没有成功.这是我的代码:

var width = 960,
    height = 800,
    root;

var force = d3.layout.force()
    .linkDistance(120)
    .charge(-600)
    .gravity(.06)
    .size([width, height])
    .on("tick", tick);

var svg = d3.select("body").append("svg")
    .attr("width", width)
    .attr("height", height);

var link = svg.selectAll(".link"),
    node = svg.selectAll(".node");

d3.json("graph.json", function(error, json) {
  root = json;
  update();
});

function update() {
  var nodes = flatten(root),
      links = d3.layout.tree().links(nodes);


  // Restart the force layout.
  force
      .nodes(nodes)
      .links(links)
      .start();

  // Update links.
  link = link.data(links, function(d) { return d.target.id; });

  link.exit().remove();

  link.enter().insert("line", ".node") …
Run Code Online (Sandbox Code Playgroud)

javascript svg label d3.js force-layout

2
推荐指数
1
解决办法
2378
查看次数