python - 更改后在 Jupyter 中绘制维恩图 (matplotlib-venn)

标签 python matplotlib plot jupyter matplotlib-venn

按照 matplotlib-venn 自述文件中的命令,我可以生成示例中的初始图。但是,当我更改维恩图的设置(标签文本等)时,我不知道如何重新绘制图形。运行:

%matplotlib inline
from matplotlib_venn import venn3
v = venn3([set1, set2, set3], ('Set1', 'Set2', 'Set3'))

内联维恩图。然后我继续更改标签

v.get_label_by_id('100').set_text('Arbitrary1')

但我无法重新绘制图形。我试过了

# from matplotlib import pyplot as plt
plt.plot()
plt.plot(v)
v
v()

但我真的感觉在黑暗中徘徊。我觉得我遗漏了一些关于 %matplotlibmatplotlib 绘图函数的非常基本的东西,但我还没能在网上找到答案。

如何在 Jupyter 中再次绘制此图?

最佳答案

如果您使用 fig=plt.figure() 来存储对图形实例的引用,那么您将可以在以后的笔记本单元格中访问该图形。如果您不这样做,那么您将无法访问新单元格中的现有图形。

因此,在设置标签后,您只需再次编写 fig 即可再次显示图形。

这是一个工作示例:

单元格 1:

%matplotlib inline
from matplotlib_venn import venn3
import matplotlib.pyplot as plt
fig = plt.figure()
set1 = set(['A', 'B', 'C'])
set2 = set(['A', 'D', 'E'])
set3 = set(['A', 'F', 'B'])

v = venn3([set1, set2, set3], ('Set1', 'Set2', 'Set3'))

单元格 2:

v.get_label_by_id('100').set_text('Arbitrary1')
fig

enter image description here

关于python - 更改后在 Jupyter 中绘制维恩图 (matplotlib-venn),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44386240/

相关文章:

python 访问返回的变量

python - @properties 装饰器是否缓存结果?

python - 在 Windows 上导入 mpl_toolkits.basemap?

python - seaborn/matplotlib 中的散点图,点大小和颜色由连续数据框列给出

Python - Matplotlib/matplotlib.cbook.TimeoutError : LOCKERROR

用于绘制 map 的 Java 库?

python - seaborn 中 pairplot 中直方图的高度是多少?

python - 从样本中创建 3 个相互排斥且共同详尽的列表

r - 如何在 r 中创建和弦图?

R - 在过滤不需要的数据后自动从多个 csv 文件创建散点图