【问题标题】:How can I center the position of a matplotlib figure after nbconvert?如何在 nbconvert 之后将 matplotlib 图形的位置居中?
【发布时间】:2017-01-05 12:36:07
【问题描述】:

我想使用 nbconvert 将我的 jupyter 笔记本转换为演示文稿。是否可以将 matplotlib 图形放置在幻灯片的中心?

在 jupyter 中,我阻止我的代码显示,然后进行绘图。

(原始NBC转换)

<style type="text/css">
.input_prompt, .input_area, .output_prompt {
    display:none !important;
}
</style>

(蟒蛇)

%matplotlib inline
import matplotlib.pyplot as plt

plt.plot([1,2,3]);

然后,使用以下命令将此笔记本转换为 html:

jupyter nbconvert mynote.ipynb --to slides

生成的 html 呈现如下。

我一直试图将这个情节放在幻灯片的中心。我查看了我的reveal.css 文件,但不知道要更改哪个部分。有谁知道我该如何解决这个问题?

我使用 jupyter 1.0.0 和 nbconvert 4.2.0。

【问题讨论】:

    标签: python jupyter reveal.js nbconvert


    【解决方案1】:

    可能有更好的解决方案,但在 RawNBConvert 单元格中添加几行可以解决此问题。我希望这不会造成副作用。

    <style type="text/css">
    .input_prompt, .input_area, .output_prompt {
        display:none !important;
    }
    
    div.output_png {
      display: flex;
      justify-content: center;
    }
    
    </style>
    

    【讨论】:

      【解决方案2】:

      只是为了给Taro的解决方案添加细节:

      “RawNBConvert”单元格可以由

      创建
      1. 转到查看 -> 单元格工具栏 -> 原始单元格格式
      2. 创建一个类型为(Cell -> Cell Type)“Raw NBConvert”的新单元
      3. 将“原始 NBConvert 格式”设置为 HTML

      这个解决方案的样式代码可以添加到新创建的单元格中。 NBConvert 应该会自动拾取它。

      请注意,发布的解决方案禁用了输入区域的显示(即用于生成图像的脚本,以及幻灯片中的任何脚本)。这类似于在将笔记本转换为幻灯片时设置-no-input 选项。

      最后,真正对我有用的是使用它(您可能需要调整一些参数):

      <style type="text/css">
      .input_prompt, .input_area, .output_prompt {
          display:none !important;
      }
      
      div.output_png {
          max-width: 100%;
          width: 100%;
      }
      
      div.output_png img {
         width: 80%;
         margin-left: auto;
         margin-right: auto;
         display: block;
      }
      
      </style>
      

      希望对你有帮助

      【讨论】:

        猜你喜欢
        • 2021-09-24
        • 1970-01-01
        • 2011-11-18
        • 1970-01-01
        • 2012-05-04
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多