所以在我最近从R过来之后,我仍然在掌握Python。我正在努力从DF列中自动注释绘图。这在R中很容易做到。
前几天我在MPL散点图上得到了同样的帮助。但我一直在绞尽脑汁想弄清楚这件事。我将添加一些随机数据,并显示一张我想要的东西的图片。
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import matplotlib as mpl
import seaborn as snsd = {'Player': ['Messi', 'Ronaldo','Mbappe','Kovacic', 'Werner','Salah'], '% of Squad pass': [3.2,3.2,4.4,9.9,7.4,4.8)
df = pd.DataFrame(data = d)这就是我现在正在做的事情。
fig, ax = plt.subplots(1,1, figsize=(4,4))
sns.swarmplot(data=df, x ='% of Squad Pass', ax = ax)这给我带来了这个

有没有我可以使用的循环函数,它可以用来自数据帧中'Player‘列的文本自动为绘图点添加注释?
所以我会以这样的方式结束

谢谢,希望这将是我关于这个问题的最后一个问题!
发布于 2021-02-03 21:32:33
这是我的建议。您需要导入随机库。
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import matplotlib as mpl
import seaborn as sns
import random
d = {'Player': ['Messi', 'Ronaldo','Mbappe','Kovacic', 'Werner','Salah'], '% of Squad pass': [3.2,3.2,4.4,9.9,7.4,4.8]}
df = pd.DataFrame(data = d)
fig, ax = plt.subplots()
sns.swarmplot(data = df, x=df['% of Squad pass'], ax = ax)
for i, j in enumerate(df['% of Squad pass']):
plt.annotate(df['Player'][i],
xy=(df['% of Squad pass'][i],0),
xytext=(df['% of Squad pass'][i], random.uniform(0.2,0.4)),
arrowprops=dict(arrowstyle="->"))https://stackoverflow.com/questions/66025261
复制相似问题