簡體   English   中英

我無法使用 matplotlib 在圖表上標記數據點

[英]I am unable to label the data points on the graph using matplotlib

這是我一直在編寫的代碼,但無法為數據點添加標簽。 嘗試了多種方法,但一個接一個地出錯! 第 9 行中的數據集:“國家”將用作標簽。 我想標記第一個和最后一個數據點。 請幫忙!

```python
import pandas as pd
import numpy as np
from sklearn.cluster import KMeans
import matplotlib.pyplot as plt

data = pd.read_csv('happy_income1.csv')
happy = data['happyScore']
satis = data['avg_satisfaction']
country = data['country']

# Zapping 2 arrays together
satis_happy = np.column_stack((satis,happy))

# Sorting
data.sort_values('avg_satisfaction', inplace=True) #Sorting Data Column

# Filtering
satisfied = data[data['avg_satisfaction']>4] #Making Section as per requirement
print(satisfied)

# Making clusters as required
k_res = KMeans(n_clusters=3).fit(satis_happy)
cluster = k_res.cluster_centers_
print(cluster)

# Plotting
fig, week4 = plt.subplots()
week4.scatter(x=happy, y=satis)
week4.scatter(x=cluster[:,0], y=cluster[:,1], s=9999, alpha=0.25)
week4.set_xlabel('Happiness')
week4.set_ylabel('Satisfaction')
week4.set_title('Happiness versus Satisfaction')

# Labelling
# ----------------------------------------------

plt.show()
```

CSV 文件鏈接: 點擊這里

您可以在繪制散點圖后添加這兩條附加線。 他們會將文本添加到第一個和最后一個條目。 如果需要,您可以執行其他操作,例如背景框等。 您可以在此處查看 matplotlib 文檔和示例

offset=0.05
week4.annotate(country[0], (happy[0]+offset, satis[0]+offset), color='red', weight='bold')
week4.annotate(country.iat[-1], (happy.iat[-1]+offset, satis.iat[-1]+offset), color='blue', weight='bold')

輸出圖

在此處輸入圖像描述

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM