擅长:python、mysql、java
<p>根据文档(<a href="http://matplotlib.org/api/pyplot_api.html" rel="nofollow">http://matplotlib.org/api/pyplot_api.html</a>):</p>
<blockquote>
<p>label string or anything printable with ‘%s’ conversion.</p>
</blockquote>
<p>因此,在您的情况下,要获得<code>label = mass</code>,必须在需要时使用<code>label = "%.1E" % mass</code>和其他格式选项。</p>
<p>很可能你得重新考虑你的<code>mass</code>变量。若要获取示例中除数值外手动键入的内容,还需要一个与<code>MASS1</code>等价的字符串,除非将质量值放入数组中并创建在该数组上迭代的绘图。在这种情况下,您可以根据数组索引动态创建<code>MASSX</code>标签:</p>
<pre><code>indexVal = 0
for massVal in mass:
indexVal += 1
...code for getting dist_2, var2, sigma_num_2 variables...
plt.plot(np.log(dist_2[1:]/var2['r200'][:20]), np.log(sigma_num_2),'b-o', color = 'b', label = "MASS%s = %.1E" % (indexVal, massVal))
</code></pre>