小编sha*_*roz的帖子

D3.js - 嵌套对象的动画出口

对于每个数据项,我添加一个组(g class ="parent"),其中包含一个圆圈.添加它们并设置它们的属性很好.

但我无法弄清楚如何处理删除.在退出时为嵌套对象设置动画的方法是什么?

// parents
var parents = svg.selectAll("parent").data(glyphs);
parents.enter()
    .append("g")
    .attr("class", "parent")
    .attr("transform", function (glyph) { 
        return "translate(" + glyph.x + "," + glyph.y + ")";
    });

// children
var circles = parents.append("circle");
circles
    .attr("r", 0)
    .attr("fill", function (glyph) { return glyph.color; });
// animated entry
circles.transition()
    .attr("r", function (glyph) { return glyph.radius; });
Run Code Online (Sandbox Code Playgroud)

这是不起作用的部分.我不确定如何在退出时给孩子们制作动画.

// animate exit
circles
    .exit() // <-- not valid
    .transition()
    .duration(250)
    .attr("r", 0);
parents
    .exit()
    .transition()
    .delay(250)
    .remove();
Run Code Online (Sandbox Code Playgroud)

有人可以提供一些提示或指出一个很好的例子吗?

animation d3.js

7
推荐指数
1
解决办法
2122
查看次数

如何将 Bookdown 章节放在子目录中?

我不知道如何在子目录中使用 Rmd 文件制作一本书。

这是我当前的目录结构:

  • 我的项目.Rproj
  • 索引
  • _bookdown.yml
  • 章节/
    • 第一章RMD
    • 第2章RMD
    • extraThatShouldNotBeIncluded.RMD

应该去什么_bookdown.ymlindex.RMD做这项工作?

r bookdown

6
推荐指数
1
解决办法
618
查看次数

使用字符串在dplyr(或基数R)中每行选择列

我有一个填充其他列名称的列.我想获取每个列名称中的值.

# three columns with values and one "key" column
library(dplyr)
data = data.frame(
  x = runif(10),
  y = runif(10),
  z = runif(10),
  key = sample(c('x', 'y', 'z'), 10, replace=TRUE)
)

# now get the value named in 'key'
data = data %>% mutate(value = VALUE_AT_COLUMN(key))
Run Code Online (Sandbox Code Playgroud)

我很确定答案与mutate的懒惰eval版本有关,但我不能为我的生活弄明白.

任何帮助,将不胜感激.

r dplyr

5
推荐指数
3
解决办法
377
查看次数

在R图形中,绘制字符(pch)16和19有什么区别?

除了提及“实心”与“实心”外,我找不到任何文档。

library(graphics)
plot.new()
points(.48, .5, pch=19)
points(.52, .5, pch=16)
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明

编辑:温斯顿·张的解释很彻底地回答了我的问题https://github.com/hadley/ggplot2/issues/1757#issuecomment-247804365

r

5
推荐指数
1
解决办法
503
查看次数

是否可以消除渲染 d3 鼠标位置的延迟?

我有一些代码在光标位置上方显示一个 SVG 项目。我注意到如果对象只是落后一帧,那么它比我预期的要落后于光标。

var width = 600,
    height = 200;
var mouseLocation = [0,0];

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

var cursor = svg.append('circle')
    .attr("r", 2)
    .attr("fill", 'darkblue');

// update mouse location
d3.select(window).on("mousemove", () => { 
  mouseLocation = d3.mouse(svg.node()); 
});

// show mouse
d3.timer(function() {
  cursor.attr("transform", 'translate(' + mouseLocation + ')');
});
Run Code Online (Sandbox Code Playgroud)
<script src="http://d3js.org/d3.v4.min.js"></script>
Run Code Online (Sandbox Code Playgroud)

您可以通过将鼠标从一侧平滑地滑动到另一侧来查看延迟。蓝色圆圈稍微落后于光标。(至少在 Windows 上的 Chrome 57 上)

我尝试了几种变体,包括在 mousemove 回调函数中调用 circle.attr 。但总有一点延迟。

编辑我尝试失败的事情:

  • mousemove事件中设置光标变换
  • 检查自上次mousemove调用以来经过的时间,仅每 16 毫秒更新一次。
  • svg.style("shape-rendering", "optimizeSpeed");
  • mousemove …

svg d3.js

5
推荐指数
1
解决办法
739
查看次数

如何使用“level”生成 geom_smooth 中的置信区间?

我无法模拟如何stat_smooth计算其置信区间。

让我们生成一些数据和一个简单的模型:

library(tidyverse)    
# sample data
df = tibble(
  x = runif(10),
  y = x + rnorm(10)*0.2
)

# simple linear model
model = lm(y ~ x, df)
Run Code Online (Sandbox Code Playgroud)

现在用于predict()生成值和置信区间

# predict 
df$predicted = predict(
  object = model,
  newdata = df
)

# predict 95% confidence interval
df$CI = predict(
  object = model,
  newdata = df,
  se.fit = TRUE
)$se.fit * qnorm(1 - (1-0.95)/2)
Run Code Online (Sandbox Code Playgroud)

请注意,qnorm 用于从标准误差扩展到 95% CI

绘制数据(黑点)、geom_smooth(黑线 + 灰带)和预测带(红线和蓝线)。

ggplot(df) +
  aes(x = x, y …
Run Code Online (Sandbox Code Playgroud)

r ggplot2

5
推荐指数
1
解决办法
1498
查看次数

PHP中的shell_exec返回空字符串

shell_exec并且exec不会返回任何内容.我无法弄清楚出了什么问题.

这是一些代码:

echo 'test: ';
$output = shell_exec('whoami');
var_export($output, TRUE);
echo PHP_EOL . '<br>' . PHP_EOL;
Run Code Online (Sandbox Code Playgroud)

这是输出的来源

test 2: 
<br>
Run Code Online (Sandbox Code Playgroud)

我无法控制主机,但我相信他们正在运行SuPHP.根据phpinfo,safe_mode已关闭.whoami从SSH 运行输出预期值.

我不知所措.知道如何调试这个吗?

php shell-exec

4
推荐指数
1
解决办法
2020
查看次数

ggplot中图例键之间的间距

我在图的顶部有一个图例。我希望图例保持左对齐,并能够设置美学符号(彩色正方形)和文本之间的间距(1),以及文本和下一个美学符号之间的间距(2)。

library(tidyverse)

mtcars %>% 
  mutate(transmission = ifelse(am, "manual", "automatic")) %>% 
ggplot() +
  aes(x = transmission, fill = transmission) +
  geom_bar() +
  labs(fill = NULL) +
  theme(
    #legend.spacing.x = unit(.5, "char"), # adds spacing to the left too
    legend.position = "top", 
    legend.justification = c(0,0),
    legend.title=element_blank(),
    legend.margin=margin(c(5,5,5,0)))
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明

r ggplot2

4
推荐指数
1
解决办法
2619
查看次数

可变版的申请?

我试图获得数据帧中每个子集的平均值,并将该信息合并到一列中.

我可以用lapply做到这一点,但我不能让它"坚持".是否存在具有副作用的应用函数族的变体?plyr库中的任何东西都可以.

data <- data.frame(
  A = sample(LETTERS[1:3], 20, replace=TRUE),
  B = runif(20),
  C = LETTERS[1:20])
# split by A
dataByA <- split(data, factor(data$A))
# get average of B per set
lapply(dataByA, function(df) {df$Bmean <- mean(df$B)}) # does nothing!
# remerge subsets
data <- rbind.fill(dataByA)
Run Code Online (Sandbox Code Playgroud)

谢谢

r dataframe

3
推荐指数
2
解决办法
125
查看次数

`renv` 是否有可能被“绕过”或暂时关闭?

我有一个 RStudio 项目,它使用 来管理包renv,效果很好。

但有时我想在我的主环境(正确的词?)上使用库来调试或探索一些我不想添加到项目中的东西。例如,也许我想运行一些长调试函数并beepr::beep()在最后调用。是否可以在不将beepr包安装到项目的情况下实现?

long_process()
beepr::beep() # How do I make this call?
Run Code Online (Sandbox Code Playgroud)

r renv

3
推荐指数
1
解决办法
520
查看次数

glTexParameter和OpenGL和GLSL中的过滤?

我有几个关于glTexParameter和过滤的问题

1)应用glTexParameter(特别是过滤)时的范围是什么?这是一个场景:

  • 绑定纹理.将过滤器设置为LINEAR
  • 将纹理设置为着色器的"Sampler1"
  • 绑定另一个纹理.将其过滤器设置为NEAREST
  • 将该纹理设置为着色器的"Sampler2"

当我在着色器中使用纹理时,一个是线性的而另一个是最近的?或者它们都是最近的,因为它被称为最后?

2)是否可以在GLSL中设置过滤方法?

opengl textures glsl

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

在嵌套数据中包含分组列

我想对每组变量ab. 问题是nest()不包括模型所需的分组变量。

expand.grid(a = LETTERS[1:3], b = LETTERS[1:2], c=1:3, d=1:3) %>% 
   group_by(a, b) %>% 
   nest()
Run Code Online (Sandbox Code Playgroud)

将所得的表包括ab在“外部”和cd在嵌套tibble。如何将a和添加b到嵌套的 tibble 中?

r purrr

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

标签 统计

r ×8

d3.js ×2

ggplot2 ×2

animation ×1

bookdown ×1

dataframe ×1

dplyr ×1

glsl ×1

opengl ×1

php ×1

purrr ×1

renv ×1

shell-exec ×1

svg ×1

textures ×1