我正在使用 jupyter notebook,它工作正常,但是当我按 TAB 时,自动完成不起作用。我已经在 StackOverflow 中检查了所有类似的情况,但没有一个解决方案对我有用。我还尝试对 IPython、IPYKernel、Jedi 和 Tornado 进行“pip 升级”,升级工作正常,但问题仍然存在。我在 Firefox、Chrome 和 Edge 中尝试过。当我按 TAB 时,我可以在终端中看到这些错误:
[IPKernelApp] ERROR | Exception in message handler:
Traceback (most recent call last):
File "c:\users\tomer\appdata\local\programs\python\python39\lib\site-packages\ipykernel\kernelbase.py", line 265, in dispatch_shell
yield gen.maybe_future(handler(stream, idents, msg))
File "c:\users\tomer\appdata\local\programs\python\python39\lib\site-packages\tornado\gen.py", line 762, in run
value = future.result()
File "c:\users\tomer\appdata\local\programs\python\python39\lib\site-packages\tornado\gen.py", line 234, in wrapper
yielded = ctx_run(next, result)
File "c:\users\tomer\appdata\local\programs\python\python39\lib\site-packages\ipykernel\kernelbase.py", line 580, in complete_request
matches = yield gen.maybe_future(self.do_complete(code, cursor_pos))
File "c:\users\tomer\appdata\local\programs\python\python39\lib\site-packages\ipykernel\ipkernel.py", line 356, in do_complete
return self._experimental_do_complete(code, cursor_pos)
File …Run Code Online (Sandbox Code Playgroud) 我有一个可以过夜运行的笔记本,可以打印出一堆东西,包括图像等。我想以编程方式保存此输出(可能以一定的时间间隔)。我还想保存运行的代码。在 Jupyter 笔记本中,您可以执行以下操作:
from IPython.display import display, Javascript
display(Javascript('IPython.notebook.save_checkpoint();'))
# causes the current .ipynb file to save itself (same as hitting CTRL+s)
Run Code Online (Sandbox Code Playgroud)
虽然,我发现这个 javascript 注入在 Jupyter 实验室中不起作用(Jupyter 未找到)。我的问题是如何在 Jupyter 实验室中执行与上述代码等效的操作。在检查 jupyter 实验室的 HTML 后,我找不到 Jupyter 对象。
Jupyter Notebook(和 Jupyter Lab)附带了一个非常方便且交互式的 JSON 格式化程序。它对于让用户浏览非常深的字典而不用大量信息淹没输出单元非常有用。通常,如果我们有一个名为 的字典my_dict,您可以通过以下方式将其内容整齐地打印到输出单元格:
from IPython.display import display, JSON
display(JSON(my_dict))
Run Code Online (Sandbox Code Playgroud)
然后,用户可以与其交互以打开/关闭不同的部分。
问题是,如果您采用这种方法,它似乎无法在 GitHub 的 Web 浏览器上正确呈现。在它的位置,你将得到:
<IPython.core.display.JSON object>
有什么办法可以让我有一个像这样的 JSON 查看器,既可以在本地 JupyterLab 实例上运行,也可以在 GitHub 的网站上运行?或者我是否被迫用数百行 JSON 淹没输出单元?
ggplot2 组合了相同比例的字形,这会导致在使用geom_hline和geom_vline显示两条垂直线时出现混淆行为,因为每种颜色的关键字形包含一个十字 ( +) 而不是|或-对应于该颜色。如何防止ggplot组合-和|关键字形?
library(ggplot2)
means = as.data.frame(t(colMeans(mtcars)))
(
ggplot(mtcars, aes(x = disp, y = drat))
+ geom_point()
+ geom_hline(data = means, aes(color = 'average disp', yintercept = drat))
+ geom_vline(data = means, aes(color = 'average drat', xintercept = disp))
)
Run Code Online (Sandbox Code Playgroud)
我尝试key_glyph为geom_vline和明确设置,geom_hline但它没有改变任何东西。
注意:除了易于解释之外,这对于创建适合色盲的绘图至关重要。
我正在使用 Jupyter 笔记本。如何在 Visual Studio Code 中复制单元格?C 复制和 V 粘贴对我来说不像在线那样有效。
此外,在笔记本中工作时,Visual Studio 似乎不提供右键单击选项。是否有一个扩展可以给我一些选项,例如剪切、复制、粘贴、删除单元格等?
有谁知道是否有办法将代码片段绑定到 Jupyter Lab 中的键盘快捷键?例如,在 R Studio 中,您可以使用Ctrl+ Shift+快速M编写管道运算符 ( %>%),我已经习惯了该功能,因此我想复制它。
我查看了“设置”下的“键盘快捷键”菜单,但我不确定如何使用 JSON 模式来编写这样的覆盖(如果甚至可以从那里开始),并且文档也不是很清楚。
我正在尝试创建一个扩展程序,在打开的 Jupyter Lab 笔记本的工具栏中添加一个自定义按钮,类似于这张照片中的“提交笔记本按钮......”。我如何实现这一目标?我尝试使用以下代码但它不起作用:
import { ToolbarButton } from "@jupyterlab/apputils";
import { DocumentRegistry } from "@jupyterlab/docregistry";
import { INotebookModel, NotebookPanel } from "@jupyterlab/notebook";
import { IDisposable } from "@lumino/disposable";
export class ButtonExtension implements DocumentRegistry.IWidgetExtension<NotebookPanel, INotebookModel> {
createNew(panel: NotebookPanel, context: DocumentRegistry.IContext<INotebookModel>): IDisposable {
// Create the toolbar button
let mybutton = new ToolbarButton({
label: 'My Button',
onClick: () => alert('You did it!')
});
// Add the toolbar button to the notebook toolbar
panel.toolbar.insertItem(10, 'mybutton', mybutton);
// The ToolbarButton class implements `IDisposable`, …Run Code Online (Sandbox Code Playgroud) 我收到一份报告,称我应该触发的脚本ctrl + click在 Mac 上不起作用。
如“确定在 mousedown 事件期间是否按下 Shift 键”所示,我们可以确定在鼠标单击测试等过程中是否按下了修饰键d3.event.shiftKey。d3.event.ctrlKey该shift检测在任何地方都有效,但ctrl似乎在 MacOS 上不起作用。
d3.select(window).on("click", function() {
if (d3.event.ctrlKey) {
alert("Mouse + Ctrl pressed");
}
});Run Code Online (Sandbox Code Playgroud)
<script src="https://cdnjs.cloudflare.com/ajax/libs/d3/3.4.11/d3.min.js"></script>Run Code Online (Sandbox Code Playgroud)
我没有 Mac,但我使用 BrowserStack 测试了上面的脚本:
它不适用于 Mac 上的任何浏览器。不过它在 Windows 和 Linux 上运行良好。
我做错了什么?ctrl 键是 Mac 操作系统上的某种特殊键吗(我想是因为 Mac 也有“命令”键)。ctrl + click是否为了 Mac OS 兼容性而不鼓励使用?
编辑:我发现了这个:“有什么方法可以在 osx …
我将我的 Jupyter 笔记本排列成:data.ipynb,methods.ipynb和results.ipynb. 如何有选择地从数据和方法笔记本中导入单元格以在结果笔记本中使用?
我知道的nbimporter和ipynb,但这些都不提供的变量选择进口。有一个选项可以导入定义 - 包括大写的变量 - 但这对我不起作用,因为我必须将笔记本中的大多数变量转换为大写。
除了需要很长时间评估的两个或三个单元格之外,我宁愿导入所有内容。理想情况下,我想将某些任务的执行推迟到我访问它们的那一刻(懒惰评估) - 但我知道这可能难以实施。
以下是伪代码概述(每行代表一个单元格):
data.ipynb:
raw_data = load_data()
dataset = munge(raw_data)
describe(dataset) # I want this line to be skipped at import
Run Code Online (Sandbox Code Playgroud)
methods.ipynb:
import data
method = lambda x: x * x
# showcase how the method works on a subset of the dataset
method(data.dataset[:5]) # I want this line to be skipped …Run Code Online (Sandbox Code Playgroud) 我尝试使用波浪下划线来突出显示完整的句子,但似乎它会错过某些字符(短字符和下划线末尾的字符)。这是 Google Chrome 中的预期行为还是错误(Firefox 中一切正常)?
如果这是预期的行为(我知道非常短的字符的波浪下划线可能看起来不太吸引人),我如何解决这个问题,以在整个文本范围内获得波浪下划线(最好不诉诸背景图像替代品)?
.dotted,
.wavy {
text-decoration-skip-ink: none;
text-decoration-line: underline;
text-decoration-color: blue;
}
.dotted {
text-decoration-style: dotted;
}
.wavy {
text-decoration-style: wavy;
}
div {
font-family: "Times New Roman"
}
div {
border: 4px solid black;
margin: 5px;
padding: 0px 5px;
}
.ok {
border-color: green
}
.problem {
border-color: red
}
.using-sans {
font-family: sans
}Run Code Online (Sandbox Code Playgroud)
<div class=ok>
<p>
The dotted underline correctly underlines all characters:
<span class=dotted>works ok</span>
</p>
<p>
As well as single characters: …Run Code Online (Sandbox Code Playgroud)Jupyter Notebook 和 Jupyter Lab 运行良好,直到我更新软件包并设置环境。\n此后,JupyterLab 3.0 无法打开。它显示 404 和一条错误消息:
\n[I 18:21:13.532 LabApp] JupyterLab extension loaded from \nC:\\Users\\Alfonso\\AppData\\Roaming\\Python\\Python38\\site-packages\\jupyterlab\n[I 18:21:13.532 LabApp] JupyterLab application directory is C:\\Users\\Alfonso\\AppData\\Roaming\\Python\\share\\jupyter\\lab\n[W 18:21:13.533 LabApp] Error loading server extension jupyterlab\n Traceback (most recent call last):\n File "C:\\ProgramData\\Anaconda3\\lib\\site-packages\\notebook\\notebookapp.py", line 2036, in init_server_extensions\n func(self)\n File "C:\\Users\\Alfonso\\AppData\\Roaming\\Python\\Python38\\site-packages\\jupyterlab\\extension.py", line 226, in load_jupyter_server_extension\n add_handlers(web_app, config)\n File "C:\\ProgramData\\Anaconda3\\lib\\site-packages\\jupyterlab_server\\handlers.py", line 162, in add_handlers\n handlers.append((url_pattern, LabHandler))\n AttributeError: \'NotebookWebApplication\' object has no attribute \'append\'\n[I 18:23:27.282 LabApp] Serving notebooks from local directory: C:\\Users\\Alfonso\n[I 18:23:27.282 LabApp] Jupyter Notebook …Run Code Online (Sandbox Code Playgroud) 我想知道是否有办法从 uniprot 蛋白质 id 中获取蛋白质序列。我确实检查了一些在线软件,但它们允许一次获得一个序列,但我有 5536 个 vlues。biopython中是否有任何包可以做到这一点?
我试过
from IPython.core.display import display, HTML
display(HTML("<style>.container { width:60% !important; }</style>"))
Run Code Online (Sandbox Code Playgroud)
从这个答案来看。我也尝试过
%%html
<style>.container { width:60% !important; }</style>
Run Code Online (Sandbox Code Playgroud)
但它们不起作用。
jupyter-lab ×7
python ×6
jupyter ×4
ipython ×3
css ×2
python-3.x ×2
anaconda ×1
biopython ×1
browserstack ×1
d3.js ×1
data-science ×1
dom ×1
ggplot2 ×1
github ×1
html ×1
javascript ×1
macos ×1
r ×1
typescript ×1