小编Chr*_*fer的帖子

在D3中指定可缩放热图的视图

我正在做一个具有缩放和平移功能的热图,并意识到在我增加热图左边的空间后,数据点在缩放和平移时显示在y轴的左侧,以便制作y轴的空间(见图).我怎么能避免这个?代码示例如下所示.

在此输入图像描述

var zoom = d3.behavior.zoom()
    .scaleExtent([dotWidth, dotHeight])
    .x(xScale)
    .on("zoom", zoomHandler);

var svg = d3.select("body")
    .append("svg")
        .attr("width", width + margin.left + margin.right)
        .attr("height", height + margin.top + margin.bottom)
        .call(zoom)
    .append("g")
        .attr("transform", "translate(" + margin.left + "," + margin.top + ")");

function zoomHandler() {
    var t = zoom.translate(),
        tx = t[0],
        ty = t[1];

    tx = Math.min(tx, 0); // tx < 0
    tx = Math.max(tx,  -1000); //
    zoom.translate([tx, ty]);

    svg.select(".x.axis").call(xAxis);
    svg.selectAll("ellipse")
        .attr("cx", function(d) { return xScale(d.day); })
        .attr("cy", function(d) { return yScale(d.hour); …
Run Code Online (Sandbox Code Playgroud)

javascript zoom d3.js

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

将SVG路径转换为坐标

如何将SVG路径转换为xy坐标?直到最近我才使用了一个网页,该网页使用了下面的jQuery代码.但是,我不知道如何在本地存储的SVG文件上执行代码.任何帮助或推荐的工具(对于Mac)表示赞赏.

$("path").each(function(i){
    var path = this;
    var len = path.getTotalLength();
    var p=path.getPointAtLength(0);
    stp=p.x+","+p.y
    for(var i=1; i<len; i++){
        p=path.getPointAtLength(i);
        stp=stp+" "+p.x+","+p.y;
    }
    $(path).replaceWith('<polygon points="' +  stp + '" />');
});
Run Code Online (Sandbox Code Playgroud)

jquery svg coordinates

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

使用 dplyr 的子集嵌套数据框

我想用 ? 对嵌套数据框的内部数据框进行子集化dplyr

我有以下嵌套数据框:

library(dplyr)

# Initialise nested data frame
d <- tibble(group = c("A", "B"),
            data = rep(list(NA), 2))

set.seed(1)
d$data[[1]] <- data.frame(x = seq(1:10),
                          y = rnorm(10))
d$data[[2]] <- data.frame(x = seq(1:15),
                          y = rnorm(15),
                          z = runif(15))
Run Code Online (Sandbox Code Playgroud)

假设我只想要group == "A"where数据框中的行y >= 0,而 for 数据框group == B保持不变。编辑: 操作后两个结果数据框应具有相同的变量。

我正在考虑做类似下面一行的事情,但与 mutate 命令结合使用,但filter(y >= 0)在这里不起作用。那么,我应该怎么做呢?

d %>% filter(group == "A") %>% select(data) %>% filter(y >= 0)
Run Code Online (Sandbox Code Playgroud)

r dplyr

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

在Python函数中返回多个列表

我是Python的新手,我正在尝试创建一个函数,该函数使用来自用户输入的不同材料参数创建列表,如下面的代码所示.

def material():
    layers = int(raw_input("State the number of material layers in the wall (0 for default material): "))

    rho = [] # Density [kg/m3]
    c = [] # Heat capacity [J/(kg K)] 
    k = [] # Heat conductivity [W/(m K)]
    #a = [] # Thermal diffusivity [m2/s]
    d = [] # Thickness of material [m]

    # Saveing material properties
    if layers == 0:
        rho.append(2300)
        c.append(900)
        k.append(1.6)
        d.append(3.2)
        layers = 1

    else:
        for i in range(layers):
            print "\n" "Define thermal …
Run Code Online (Sandbox Code Playgroud)

python return function list

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

将日期转到R中的数据框

list包含日期转换为a时遇到麻烦date.frame,因为使用unlist命令时日期会转换为整数.

list在我的工作似乎与此类似,只是方式更多的数据帧:

list(
    data.frame(
        date = as.POSIXct(Sys.time() + days(seq(0, 4))),
        value = c(4,5,1,7,9)),
    data.frame(
        date = as.POSIXct(Sys.time() + days(seq(5, 9))),
        value = c(3,3,5,1,7))
)
Run Code Online (Sandbox Code Playgroud)

我正在寻找一种方法将其转换为单个data.frame看起来像这样:

                  date   value
1  2017-07-24 14:30:18       4
2  2017-07-25 14:30:18       5
3  2017-07-26 14:30:18       1
4  2017-07-27 14:30:18       7
5  2017-07-28 14:30:18       9
6  2017-07-29 14:30:18       3
7  2017-07-30 14:30:18       3
8  2017-07-31 14:30:18       5
9  2017-08-01 14:30:18       1
10 2017-08-02 14:30:18       7
Run Code Online (Sandbox Code Playgroud)

r date list dataframe

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

标签 统计

list ×2

r ×2

coordinates ×1

d3.js ×1

dataframe ×1

date ×1

dplyr ×1

function ×1

javascript ×1

jquery ×1

python ×1

return ×1

svg ×1

zoom ×1