我有个情节:

我想显示一下"o“标记的确切价格。
目前的代码是:
plt.figure(figsize=(18,10))
plt.plot(visas_df["years"],visas_df["published_finals"],color='green',marker="o");
plt.plot(visas_df["years"],visas_df["expired_finals"],color='red',marker="o");
plt.plot(visas_df["years"],visas_df["visas"],color='blue',marker="o");
plt.xticks(visas_df.years)
plt.title("Visas Per Year",fontsize=20)
plt.xlabel("Year",fontsize=18)
plt.ylabel("Visas (Final & Provisional)",fontsize=18)
plt.legend(["Newly Published","Expired","Total Visas"],fontsize = 20)
plt.grid(visible=True,color='black')
plt.minorticks_on()
plt.grid(visible=True,which="minor")当我试图使用:
plt.yticks(visas_df.published_finals)
plt.yticks(visas_df.expired_finals)
plt.yticks(visas_df.visas)情节变得杂乱无章:

我想从df列中获取值并显示它们,或者在"o“标记上显示它们。两种方法都行。
对此有什么想法吗?谢谢!
发布于 2022-10-18 23:47:00
在对matplotlib烦躁了几年之后,我设法将这些值放在标记上。
这是通过使用matplotlib来完成的。axes.Axes。文本
对以下代码的修改:
fig,ax=plt.subplots(figsize=(25,15))下面的代码使用ax.text,重复3次,因为我有3行代码。
for i in range(len(visas_df.years)):
ax.text(visas_df.years[i],visas_df.published_finals[i],visas_df.published_finals[i]/1000,
size=12,verticalalignment ='top',horizontalalignment ='right',
color="g",fontweight="bold",fontstretch="condensed"),
ax.text(visas_df.years[i],visas_df.expired_finals[i],visas_df.expired_finals[i]/1000,
size=12,verticalalignment ='bottom',horizontalalignment ='right',
color="r",fontweight="bold",fontstretch="condensed"),
ax.text(visas_df.years[i],visas_df.visas[i],visas_df.visas[i]/1000,
size=12,verticalalignment ='bottom',horizontalalignment ='right',
color="b",fontweight="bold",fontstretch="condensed")
ax.set(xlim =(2000,2023), ylim =(-25000, 175000))代码的其余部分基本相同,结果如下:

https://stackoverflow.com/questions/74109259
复制相似问题