错误在python中向散点图添加标签

时间:2020-05-18 17:03:22

标签: python label scatter-plot

我正在尝试创建带有标签的散点图,但出现下一个错误:TypeError:无法解包不可迭代的浮动对象

你知道我在做什么错吗?

label = ['Tuvalu', 'Nauru', 'Kiribati', 'Marshall Islands', 'Palau', 'Micronesia']
x = [ 1, 1500, 340, 8902, 5, 250]
y = [ 1, 4, 10, 3, 5, 23]

plt.scatter (x,y)
ax = plt.gca()
ax.set_xscale('log')

for i, label in range(len(label)):
    ax.annotate(label,x[i], y[i]) 

2 个答案:

答案 0 :(得分:0)

我错过了一些括号:

 ax.annotate(label,(x[i], y[i])) 

答案 1 :(得分:0)

对于标签,您可以使用

for i in range(len(label)):
   ax.annotate(label[i],(x[i], y[i])) 

我通常使用Plotly,因为它是出色的可视化库。您的代码中的错误是由于for循环。如果需要,可以使用Plotly。

import plotly.graph_objects as go
fig = go.Figure()
label = ['Tuvalu', 'Nauru', 'Kiribati', 'Marshall Islands', 'Palau', 'Micronesia']
x = [ 1, 1500, 340, 8902, 5, 250]
y = [ 1, 4, 10, 3, 5, 23]
for i in range(0,6):
  fig.add_trace(go.Scatter(x=[x[i]],y=[y[i]],mode='markers',name=label[I]))
fig.show()

PLOT