【问题标题】:Using the ipython notebook to produce engineering calcs使用 ipython notebook 生成工程计算
【发布时间】:2014-01-03 12:19:24
【问题描述】:

我是一名结构工程师,我需要生成基本上看起来像包含文本、表格、数学表达式等的报告的计算...这些计算是高度重复的,所以当我设计托梁时,除了数字,输出是相同的。

目前,我倾向于进行计算,然后用手或在打开的办公室文档中写下来。为了做一些重复的计算,我有时会使用 Ipython notebook 和我编写的一些 python 模块。

现在真正巧妙的事情是直接使用我在 Ipytrhon 笔记本中的计算来生成输出。输出可以是 pdf 文档。

因此看到 nbconvert 的出现真的让我很感兴趣,我仍然需要做一些工作来理解模板位。

所以要到达那里,我需要:

  1. 让我的模块函数输出一些乳胶 - 我应该没问题
  2. 根据需要格式化 nbconvert 输出。我找到了这个Writing an IPython notebook to HTML or PDF with Table Of Content 和这个Suppress code in NBConvert? IPython 有人可以指出更全面的教程吗? 有没有办法选择性地显示或隐藏输入中的一些代码块?输入单元格中这样的东西会很棒:

    /hide
    Boring code
    //hide
    Interesting python code I want to show
    
  3. 找到一种插入 pdf 页面的方法 有时我需要插入其他东西,例如绘图,甚至是手写的东西,如果能够编写一个小函数就好了 插入mypdf(pathtomy/document.pdf)。 这样当我执行 nbconvert 时,它会自动插入页面。

我在做梦吗?如果你能指出我正确的方向,我将不胜感激。理想情况下,我花在重新输入我之前计算过的东西上的所有时间都可以被替换为

ipython nbconvert --to=latex --template=latex_template.tplx --post=pdf file.ipynb

【问题讨论】:

  • 根据您的工作流程,PythonTeX 也可能是一个选项。

标签: python ipython-notebook


【解决方案1】:

谁能指出更全面的教程?

您可能会责怪我(以及其他人)没有编写这些内容,但由于 API 仍在缓慢变化,我们不愿意编写即将被弃用的文档,但我仍然在 the past 中写了一些可以给您的东西一些想法。 Damian Avila blog 也可以是一个很好的资源,因为他自己使用自定义模板来隐藏/显示代码单元,并在他的一些帖子中写到了这一点。我也看过this,但还没有完全阅读。

有没有办法选择性地显示或隐藏输入中的某些代码块?

是的,可以使用单元级元数据或标记语言,但它需要模板中的自定义代码,您可能会通过阅读上面的链接来了解,同时深入了解 nbconvert 架构。但它不会是一个班轮。

3) 会更难,但我想你可以在 markdown 单元格上使用自定义过滤器来做到这一点

我们随时欢迎您提出反馈意见。

【讨论】:

  • 谢谢,我将从模板开始,让你知道它是怎么回事,我不是一个真正的程序员,所以我还有一点学习曲线。最好的反馈渠道是什么?
  • 那么我也不是程序员 :-) 你可以在 IPython-dev(at)scipy.org 或帮助聊天中提问(更多链接请参见 IPython.org 侧边栏)跨度>
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-05-16
  • 2015-08-24
  • 2016-08-16
  • 1970-01-01
相关资源
最近更新 更多