我想知道,我应该使用哪些技术将svg过滤器应用于raphael路径?
我知道raphael试图尽可能多地使用IE浏览器,但我想知道是否有办法使用javascript添加过滤器.
有时在初始化变量时,您希望传递它们太复杂而无法在单个命令中计算的值,因此您通常先计算一个虚拟变量然后传递其值,或者在其他地方定义一个函数,并将其返回值传递给我们的变量.
我的问题(愿望)是,是否可以使用匿名函数动态计算变量?
例如,而不是使用这个:
$post = get_post();
$id = $post->ID;
$array = array(
'foo' => 'hi!',
'bar' => $id
);
Run Code Online (Sandbox Code Playgroud)
让我们使用这样的东西:
$array = array(
'foo' => 'hi!',
'bar' => (function(){
$post = get_post();
return $post->ID;
})
);
Run Code Online (Sandbox Code Playgroud)
代码完全是随机的.
我试图在 ggplot 中使用字体真棒图标,但我不能让它们显示。在情节中,它们只是不存在,而在控制台中,它们打印为缺少字符。我尝试以这种方式使用它们:
> library(emojifont)
> load.fontawesome()
> fontawesome('fa-check-circle')
[1] "? "
Run Code Online (Sandbox Code Playgroud)
在 ggplot 我试过:
geom_text(size = 7, nudge_y = .1, color = 'steelblue', family='fontawesome-webfont')
Run Code Online (Sandbox Code Playgroud)
但它什么也没显示。
Font Awesome 已正确安装在我的计算机上,并且可以在 Microsoft Word 或其他文本编辑器中使用。我在 MacOS High Sierra 上。
谢谢
在具有离散 x 轴的 ggplot 中使用躲避条时,它们以 x 刻度为中心。因此,垂直网格线也沿着柱组中间的刻度线穿过。
我希望在条形组之间有网格线。这在前面显示的情况下特别有用,在这种情况下,条形稀疏并且每个条形所属的组不是直接的。
这是代码(没有 x 的排序,它不相关并且很长):
library(ggplot)
library(dplyr)
structure(list(Reparto = c("Oncologia medica", "Centro trapianti",
"Chirurgia epatobiliare", "Dh oncologico", "Radioterapia", "Chirurgia",
"Chirurgia oncologica", "Gastroenterologia", "Radiologia", "Oncologia medica",
"Centro trapianti", "Chirurgia epatobiliare", "Dh oncologico",
"Radioterapia", "Chirurgia", "Chirurgia oncologica", "Gastroenterologia",
"Radiologia", "Oncologia medica", "Centro trapianti", "Chirurgia epatobiliare",
"Dh oncologico", "Radioterapia", "Chirurgia", "Chirurgia oncologica",
"Gastroenterologia", "Radiologia", "Oncologia medica", "Centro trapianti",
"Chirurgia epatobiliare", "Dh oncologico", "Radioterapia", "Chirurgia",
"Chirurgia oncologica", "Gastroenterologia", "Radiologia"), Fascia.oraria = c("00:00 - 3:00", …Run Code Online (Sandbox Code Playgroud) 我需要按一个变量对数据框进行分组,然后通过添加相对于另一个变量的 0.25、.5、0.75 分位数的数字或行(我已经可以这样做)和列数对其进行汇总。
在 RI 中会做例如:
iris %>%
group_by(Species) %>%
summarise(
quantile(Sepal.Length, c(.25, .75)) %>%
matrix(nrow = 1) %>%
as.data.frame() %>%
setNames(paste0("Sepal.Length", c(.25, .75)))
)
Run Code Online (Sandbox Code Playgroud)
使用 DataFrames 和 DataFrameMeta 在 Julia 中编写此代码的简洁方法是什么?如果有一个解决方案可以将它一次应用于多个列,那就更好了。
我能在 Julia 中找到的最接近的解决方案是:
groupby(iris, :Species) |>
x -> combine(x, :Sepal.Length => x -> [[map(p -> quantile(x, p), (Q25 = 0.25, Q75 = 0.75))] |> DataFrame])
Run Code Online (Sandbox Code Playgroud)
但它只是将数据帧封装到一个单元格中,而它应该将其分散到多列中。
我需要从一个闪亮的应用程序生成一个独立的后台 Julia 进程,该进程在应用程序关闭后仍然存在。
如果 Julia 进程被称为内联:
sys::exec_background('nohup', c("julia", "-e sleep(3000)", "&")
一旦 Shiny 应用程序关闭,子进程将继续存在。
但是,如果在脚本上调用 Julia 进程,并且sleep(3000)内部有相同的调用:
sys::exec_background('nohup', c("julia", "test.jl", "&")
一旦 Shiny 应用程序关闭,Julia 进程也会因错误而被终止:
signal (2): Interrupt: 2
in expression starting at .../test.jl:1
kevent at /usr/lib/system/libsystem_kernel.dylib (unknown line)
unknown function (ip: 0x0)
Allocations: 2650 (Pool: 2641; Big: 9); GC: 0
Run Code Online (Sandbox Code Playgroud)
知道为什么以及如何让 Julia 脚本进程在父应用程序中存活的解决方案吗?
这是重现该行为的代码。https://gist.github.com/bakaburg1/5d1b5135fb3b4db1a3ca2eb7e8639aa5 只需运行 Shiny 应用程序,然后将其关闭。只有内联代码 Julia 进程才能幸存。
在R中,可以通过使用%*%两个矩阵M1: n x p和来执行叉积M2: p x d,这两个矩阵的一维长度相同。
要进行叉积运算,请对1..nM1中的每一行和M2中的列1..d 乘以相对值p_M1 x p_M2,然后将所得向量求和。
但是我想要总和而不是总和prod(p_M1 x p_M2)。
我可以使用R中的嵌套循环来执行此操作,但是它非常慢,并且矩阵很大。是否有最快的替代方法%*%?
例:
set.seed(1)
a <- matrix(sample((1:100) / 100, 15), ncol = 3)
b <- matrix(sample((1:100) / 100, 15), ncol = 5)
# This produces the usual cross-product...
a %*% b
# ...which can be done also using loops
do.call('cbind', lapply(1:5, function(i) {
sapply(1:5, function(j) {
sum(a[i,] * b[,j])
})
}))
# But …Run Code Online (Sandbox Code Playgroud) 标题非常明确!在php模式下,komodo编辑假设html4并在使用html5标签(如article,time,section)时引发错误.
这可能非常麻烦,因为它可以涵盖php错误.
有没有办法来解决这个问题?
我需要更改向量中元素的值.但我想只更改少于n个实例的元素.
我使用了这个metodh,Data $ GENE是要更改的向量.
Data$GENE[which(Data$GENE %in% names(table(Data$GENE)[table(Data$GENE) < 10]))] <<- 'other'
Run Code Online (Sandbox Code Playgroud)
这有点令人费解,有更多的方式吗?
更新:回答以下评论:实际上是一个非常简单的案例!
> vec <- c(rep('foo', 5), rep('foo1', 2), rep('foo2', 1), rep('foo3', 3), rep('bar', 6))
> table(vec)
vec
bar foo foo1 foo2 foo3
6 5 2 1 3
> vec[which(vec %in% names(table(vec)[table(vec) < 5]))] <- 'other'
> table(vec)
vec
bar foo other
6 5 6
Run Code Online (Sandbox Code Playgroud) 这是在 R 中创建作用域表达式的合适方法,即封装命令,其变量在评估后被消除。
我现在使用的方式涉及使用with():
> with(data.frame(), {foo <- 5; bar <- 6; foo + bar})
[1] 11
> foo
Error: object 'foo' not found
Run Code Online (Sandbox Code Playgroud)
但这显然是一个黑客。
(顺便说一句,如果您传递c()而不是data.frame()to with(),则新变量实际上最终会出现在父环境中;不知道为什么)
r ×6
ggplot2 ×2
julia ×2
arrays ×1
code-editor ×1
dataframe ×1
debugging ×1
elements ×1
evaluation ×1
font-awesome ×1
fonts ×1
komodoedit ×1
parent-child ×1
performance ×1
php ×1
plot ×1
process ×1
raphael ×1
scope ×1
shiny ×1
svg ×1