关于这两句话我有个问题。我不完全明白。
%和这个p.get_width(), (p.get_x() + p.get_width()/ 2., p.get_y( ))
它到底在做什么?有没有办法移除像0这样的特殊值。所以除了0以外,所有的数字都显示出来了?还是用名字交换号码?
for p in ax.patches:
ax.annotate(("%1.f") % p.get_width(), (p.get_x() + p.get_width()/ 2., p.get_y( )), fontsize = 2, xytext=(-3, 2),textcoords='offset pixels')发布于 2017-09-26 09:05:54
注释函数将文本添加到情节的某些特性(https://matplotlib.org/users/annotations.html)中。在您的示例中,注释函数采用以下参数:
( a)拟写的文本
("%1.f") % p.get_width()这是复杂的部分。%用于格式化字符串。在您的示例中,%将被p.get_width()的值替换。1.f指定格式(逗号后面有一个数字的浮点数)。因此,如果p.get_width()的结果为1.23445,则结果将是字符串"1.2“。您可以在没有问题的情况下用名称更改这个号码。为了避免值为零,我会检查上面的行。
( b)要注释的特征的坐标
(p.get_x() + p.get_width()/ 2., p.get_y( ))这只是两个浮点,代表x坐标和y坐标的形式(x,y)。
c)注释的字体大小
fontsize = 2( d)写入注释的坐标
xytext=(-3, 2)e)其他论点
textcoords='offset pixels'https://stackoverflow.com/questions/46420665
复制相似问题