使用matplotlib创建词云

3

我正在尝试使用Matplotlib创建词云图。基本上,我可以在我的网格中任意位置放置文本,但需要找出一种防止它们碰撞的方法。与此相关,我卡在了两个问题上:

  1. 字体大小的单位是什么?

  2. 如何将文本的“字体大小”转换为我的图形中的单位,以便我可以将它们标记为已使用?也就是说,我如何知道每个字母在我的网格中会占用多少空间?理想情况下,我不希望在每个单词周围都划出一个整个矩形,而只需标记它们实际使用的像素即可供其他单词使用。


  1. .
  2. 首先渲染它们?边界框算法最终将变得简单得多,以实现。否则,您需要知道字形的结果向量,此时我认为您甚至不需要matplotlib,而是需要一个2D库本身(例如pycairo)。
- Brian Cain
为什么它必须与matplotlib一起使用呢? - Bruno Gelb
它不一定非得用matplotlib,但我正在使用一个概念上容易的想法(本质上是选择网格中最靠近中心但仍适合单词的位置),但实现起来却很困难。通常我觉得绘图也是这样,很容易理解你想要什么,但很难做到。在这种情况下,我想学习“pt”-measure在_fontsize_中如何转换为我的图像中的像素。我认为通过看到这是如何完成的,我会学到很多关于绘图的知识。 - user1603472
1个回答

2

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接