【问题标题】:2D Drawing for Jupyter?Jupyter 的 2D 绘图?
【发布时间】:2016-12-02 03:48:51
【问题描述】:

我教授计算机科学入门课程,我喜欢使用 2D 图形来教授。我一直在使用 John Zelle 出色的 graphics.py 库,但我想迁移到与我的学生一起使用 Jupyter,所以我需要一个新的图形解决方案。这需要早在 8 年级且没有编程经验的学生就可以使用。

我正在寻找的只是基本的矩形/椭圆/圆弧/多边形/线条功能,能够控制笔触和填充颜色。加上图像导入。但我希望 API 尽可能简单。

  1. matplotlib 是显而易见的选择,但语法有点混乱,希望用于绘图,因此需要一些额外的步骤才能将内容整理成基本的绘图屏幕。
  2. toyplot 是一个简化且更漂亮的 matplotlib,但据我所知,它不包括基本形状,它用于图表/绘图
  3. vincent API 与我要求的一样干净(尽管我会要求更多...见下文),但它不支持任意形状,仅支持图表/绘图
  4. svg 可以做任何我想做的事,但语法对于初学者来说过于复杂
  5. d3 via javascript magics 同上

虽然如果 vincent 有基本形状我会很满意,但在使用 graphics.py 一段时间后,我想我更喜欢不使用对象的东西。 Processing3 api 可能是最理想的,因为(例如)您调用了一个 rectangle() 函数,它使用当前的笔触和填充设置,而不是创建一个 Rectangle 对象,设置它的属性,然后告诉它自己绘制。 (是的,我个人更喜欢后者,但我发现它只是给初学者增加了一层混乱。)

那么...我缺少哪些选项?

【问题讨论】:

  • 为什么不将您喜爱的 gaphics.py 与 jupyter 一起使用?确保结果在一个额外的窗口中,但是 jupyter 让你添加屏幕截图、markdown 练习文本等。只需使用两者。 :)

标签: python graphics 2d jupyter


【解决方案1】:

对于年轻的学生,也许乌龟图形是最合适的

感觉这是来自 docs.python.org 的示例代码:

from turtle import *
color('red', 'yellow')
begin_fill()
while True:
    forward(200)
    left(170)
    if abs(pos()) < 1:
        break
end_fill()
done()

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-03-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-11-14
    • 2010-12-25
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多