Python 如何将特定标签添加到散点图中?
我尝试使用matplotlib在python散点图中标记几个点 我的x和y是主列和次列。我希望能够通过国家名称列(例如标签中国和美国)注释和增加点的大小 我的表名为df6,它包含多个列。我想从“国家名称”列中标记5个点Python 如何将特定标签添加到散点图中?,python,matplotlib,jupyter-notebook,scatter,Python,Matplotlib,Jupyter Notebook,Scatter,我尝试使用matplotlib在python散点图中标记几个点 我的x和y是主列和次列。我希望能够通过国家名称列(例如标签中国和美国)注释和增加点的大小 我的表名为df6,它包含多个列。我想从“国家名称”列中标记5个点 我制作了一个简单的数据框来展示如何做到这一点;主要的“技巧”是创建一个带有df['Country Name'].isin(…)的掩码,并在掩码为True的位置获取(x,y,label)值: import pandas as pd import numpy as np impor
我制作了一个简单的数据框来展示如何做到这一点;主要的“技巧”是创建一个带有
df['Country Name'].isin(…)
的掩码,并在掩码为True的位置获取(x,y,label)值:
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
data={
'x':np.arange(0,7,1),
'y':np.arange(0,7,1),
'Country Name':['Aruba','Germany','Austria','China','USA','England','Italy']
}
df=pd.DataFrame(data)
plt.scatter(df['x'],df['y'],c="b",s=3**2,zorder=2)
selectedCountries=['Germany','USA', 'China']
mask=(df['Country Name'].isin( selectedCountries ))
plt.scatter(df['x'][mask],df['y'][mask],c="r",s=5**2,zorder=3)
for (x,y,label) in df[['x','y','Country Name']][mask].values:
plt.text(x,y,label,zorder=4)
plt.show()
我制作了一个简单的数据框架来展示如何做到这一点;主要的“技巧”是创建一个带有df['Country Name'].isin(…)
的掩码,并在掩码为True的位置获取(x,y,label)值:
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
data={
'x':np.arange(0,7,1),
'y':np.arange(0,7,1),
'Country Name':['Aruba','Germany','Austria','China','USA','England','Italy']
}
df=pd.DataFrame(data)
plt.scatter(df['x'],df['y'],c="b",s=3**2,zorder=2)
selectedCountries=['Germany','USA', 'China']
mask=(df['Country Name'].isin( selectedCountries ))
plt.scatter(df['x'][mask],df['y'][mask],c="r",s=5**2,zorder=3)
for (x,y,label) in df[['x','y','Country Name']][mask].values:
plt.text(x,y,label,zorder=4)
plt.show()
如果这是一个重复的问题,我深表歉意。您可以发布数据帧的外观吗?我尝试了重复的答案,但得到了一个:ValueError:无法将float转换为NaN到整数。我添加了数据帧的图像。如果这是一个重复的问题,我深表歉意。您可以发布数据帧的外观吗?我尝试了重复的答案,但得到了一个:ValueError:无法将浮点转换为NaN或整数。我添加了数据帧的图像。