我想在matplotlib中的注解文本周围有一个彩色缓冲区。这张在QGIS中拍摄的截图显示了它的外观**(红色)**:
我所尝试的
我天真的方法是用不同的字体大小和字体粗细绘制两次“Some text”。结果看起来两次都不令人信服。bbox
解决方案“有效”,但没有缓冲文本的美学效果。
%matplotlib inline
import matplotlib as mpl
import matplotlib.pyplot as plt
# font size
plt.annotate(
'Some text', xy=(.5, .75), color=(.7, .7, .7),
ha='center', va='center', fontsize='20')
plt.annotate(
'Some text', xy=(.5, .75), color=(.2, .3, .8),
ha='center', va='center', fontsize='16')
# font weight
plt.annotate(
'Some text', xy=(.5, .5), color=(.7, .7, .7),
ha='center', va='center', fontsize='16', weight='bold')
plt.annotate(
'Some text', xy=(.5, .5), color=(.2, .3, .8),
ha='center', va='center', fontsize='16')
# bbox
plt.annotate(
'Some text', xy=(.5, .25), color=(.2, .3, .8),
ha='center', va='center', fontsize='16',
bbox=dict(fc=(.7, .7, .7), lw=0, pad=5))
结果
所以我的问题是
(How)是否有可能(通过合理的努力)在matplotlib中重新创建缓冲文本?
1条答案
按热度按时间oewdyzsn1#
here上有一个详细的演示,使用路径效果来勾勒各种图形对象。