b <- ggplot(cars,aes(x=speed,y=dist))+geom_line()
grid.arrange(
b,
plot(cars),
ncol=1
)
Run Code Online (Sandbox Code Playgroud)
给我以下错误
gList中的错误(列表(grobs = list(list(x = 0.5,y = 0.5,width = 1,height = 1,:"gList"中只允许'grobs')
让我们假设我的第二个图必须从plot函数中出来.如何将该输出转换为类似grob对象,以便它可以很好地运行grid.arrange?
当您尝试使用相同名称嵌套多个书签时,PyPdf2不会将其考虑在内.下面是自包含的python代码来测试我的意思(你需要在工作文件夹中有3个名为a,b和c的pdf文件来测试它)
from PyPDF2 import PdfFileReader, PdfFileMerger
def main():
merger = PdfFileMerger()
pagenum = 0
firstOne = True
for file in ["a.pdf","b.pdf","c.pdf"]:
print("next row")
pdf = PdfFileReader(open(file,"rb"))
merger.append(pdf)
if firstOne:
child = merger.addBookmark(title="blabla",pagenum=1)
firstOne = False
else:
child = merger.addBookmark(title="blabla",pagenum=1, parent=child)
merger.write("test.pdf")
if __name__ == "__main__":
main()
Run Code Online (Sandbox Code Playgroud)
我希望得到的pdf有三层嵌套书签
blabla
blabla
blabla
Run Code Online (Sandbox Code Playgroud)
但我得到了
blabla
blabla
blabla
Run Code Online (Sandbox Code Playgroud)
有什么方法可以确保不会发生这种情况?
编辑:我已删除pagenum变量,因为我希望这3个书签指向同一页面.
我正在尝试以下内容,这应该允许我获得介于productUrl://和之间的所有内容?
(?<=\"productUrl\"\:\"\/\/)(.*?)(?=\?)
以上工作在https://regexr.com/
然后我试图逃避反斜杠以使该字符串适合grep函数,但没有运气.这样做的正确方法是什么?
请参阅此示例:链接到示例
我实际上需要提取与我的模式匹配的子串,因此grep可以与另一个函数一起使用.
我想在一个日期间隔的值的总和上显示带有滚动标准的折线图.
生成crossfilter/reductio对象的代码是:
myCrossfilter = crossfilter(data);
function getRunningDates(numDays) {
return function getDates(d) {
var s = d.ValueDate;
var e = new Date(s);
e.setDate(e.getDate() + numDays);
a = [];
while (s < e) {
a.push(s);
s = new Date(s.setDate(
s.getDate() + 1
))
}
return a;
}
}
var dim1 = myCrossfilter.dimension(getRunningDates(20), true);
var dim2 = myCrossfilter.dimension(dc.pluck("ValueDate"));
var group1 = dim1.group();
var group2 = dim2.group();
var reducerRolling = reductio()
.std("value");
reducerRolling(group1);
var reducer = reductio()
.sum("value")
reducer(group2);
Run Code Online (Sandbox Code Playgroud)
我把所有东西放到一个jsFiddle中来表明我的意思(无关的问题:我不明白图表上的日期如何超出我dateToInit在小提琴中定义的变量). …
我已经定义了以下递归数组生成器,并且正在使用 Numba jit 来尝试加速处理(基于这个 SO 答案)
@jit("float32[:](float32,float32,intp)", nopython=False, nogil=True)
def calc_func(a, b, n):
res = np.empty(n, dtype="float32")
res[0] = 0
for i in range(1, n):
res[i] = a * res[i - 1] + (1 - a) * (b ** (i - 1))
return res
a = calc_func(0.988, 0.9988, 5000)
Run Code Online (Sandbox Code Playgroud)
我收到了一堆我不太明白的警告/错误。希望能帮助解释它们并使它们消失,以便(我假设)更快地加快计算速度。
他们在下面:
NumbaWarning:编译正在回退到启用循环提升的对象模式,因为函数“calc_func”类型推断失败,原因是:Function() 与类型参数的使用无效:(int64, dtype=Literalstr) * 参数化
在定义 0 中:所有模板都被文字拒绝。
在定义 1 中:没有文字的所有模板都被拒绝。此错误通常是由传递命名函数不支持的类型的参数引起的。
[1] 期间:解析被调用者类型:Function()
[2] 期间:键入呼叫
res = np.empty(n, dtype="float32")文件“thenameofmyscript.py”,第 71 行:
def calc_func(a, b, n):
res …Run Code Online (Sandbox Code Playgroud) 下面是一个非常愚蠢的例子,它基本上是我现实世界用例的简化版
import pandas as pd
from scipy.optimize import differential_evolution
import time
def optimizer_function(x, cost_name):
print(cost_name)
a = df_generator(x)
return cost_function(a,cost_name)
def df_generator(x):
return pd.DataFrame({"a":[x**2+3*x+8 for i in range(-int(x),int(x))]})
def cost_function(df, name):
cost = min(df["a"])
if name == "distance":
cost = 2*cost
return cost
def optimiser(criteria):
print("start optimization")
start = time.process_time()
print(start)
result = differential_evolution(func=optimizer_function, bounds=[(-100,100)],
args=(criteria))
end = time.process_time()
print(end)
print(end - start)
print("end optimization")
if __name__ == '__main__':
optimiser("distance")
print("all good")
Run Code Online (Sandbox Code Playgroud)
但我无法让它工作。我希望它能给我x最小化的值cost_function,但我收到以下错误消息:
RuntimeError:类似映射的可调用函数必须采用 f(func, iterable) …
我的 NAS 是我运行容器的地方。它位于192.168.1.23我的网络上。
我在用户定义的网络中运行了几个容器。这是docker network inspect(我已经手动删除了容器):
[
{
"Name": "traefik2_proxy",
"Id": "fb2924fe59fbb0436c72f11cb028df832a473a165162ecf08b7e3a946cfa2d3c",
"Created": "2020-05-13T23:23:16.16424119+08:00",
"Scope": "local",
"Driver": "bridge",
"EnableIPv6": false,
"IPAM": {
"Driver": "default",
"Options": {},
"Config": [
{
"Subnet": "192.168.90.0/24",
"Gateway": "192.168.90.1"
}
]
},
"Internal": false,
"Attachable": false,
"Ingress": false,
"ConfigFrom": {
"Network": ""
},
"ConfigOnly": false,
"Containers": {},
"Options": {},
"Labels": {}
}
]
Run Code Online (Sandbox Code Playgroud)
我有一个特定容器位于该网络中的 IP 地址192.168.90.16,我9118在 docker-compose 中使用以下内容公开了端口:
ports:
- target: 9118
published: 9118
protocol: tcp
Run Code Online (Sandbox Code Playgroud)
这是portainer屏幕截图:
我希望能够使用连接到该容器, …
我使用以下命令将 zip 文件从 Nodejs 服务器发送到浏览器
res.set("Content-Type", "application/octet-stream");
res.set("Content-disposition", `attachment; filename="`+zip_name+`.zip"`);
res.set("Content-Length", zipBuff.length);
res.send(zipBuff);
Run Code Online (Sandbox Code Playgroud)
然后我使用以下方法获取它:
fetch("/my/url", {
method: "POST",
body: formData,
})
.then(response => {
return response.blob();
})
.then(response => {
const blob = new Blob([response], {type: 'application/zip'});
const downloadUrl = URL.createObjectURL(blob);
const a = document.createElement("a");
a.href = downloadUrl;
a.download = "blah.zip";
document.body.appendChild(a);
a.click();
});
Run Code Online (Sandbox Code Playgroud)
我希望能够使用zip_name而不是blah文件名,但我无法弄清楚如何Content-disposition使用fetch.
有人可以解释一下它是如何完成的吗?
我正在尝试将一个简单的图例添加到自定义对图中.
这是可重现的代码(没有我的自定义对功能):
layout(cbind(1,2),width=c(1,1))
layout.show(2)
pairs(USJudgeRatings)
Run Code Online (Sandbox Code Playgroud)
为什么对功能"擦除"我的布局信息?
I am running a @nb.njit function within which I am trying to put an integer within a string array.
import numpy as np
import numba as nb
@nb.njit(nogil=True)
def func():
my_array = np.empty(6, dtype=np.dtype("U20"))
my_array[0] = np.str(2.35646)
return my_array
if __name__ == '__main__':
a = func()
print(a)
Run Code Online (Sandbox Code Playgroud)
I am getting the following error :
numba.errors.TypingError: Failed in nopython mode pipeline (step: nopython frontend)
Invalid use of Function(<class 'str'>) with argument(s) of type(s): (float64)
Run Code Online (Sandbox Code Playgroud)
Which function am I supposed to use …