[PYTHON] Étiquetez chaque point sur le diagramme de dispersion Seaborn

L'oncle de 42 ans qui a posté pour la première fois. Je suis devenu marin.

difficulté

J'ai écrit un diagramme de dispersion et je ne connaissais pas la correspondance entre id et chaque point, donc ce n'était pas bon. Quand je l'ai recherché, il semble qu'il y ait un moyen d'étiqueter chaque point, alors je vais laisser un mémorandum.

Méthode de mise en œuvre

 -*- coding utf-8 -*-
import pandas as pd
import numpy as np
import seaborn as sns
import matplotlib.pyplot as plt


def label_point(x,y,id,ax):
  df_tmp=pd.concat({'x':x,'y':y,'id':id}, axis='columns')
  for i, point in df_tmp.iterrows():
    ax.text(point['x'], point['y'], point['id'],\
    fontsize=5\
    )


if __name__=='__main__':
  rfilename='testdata.csv'
  data=pd.read_csv(rfilename)

 # Dessin de diagramme de dispersion
  ax=sns.scatterplot(x=data.iloc[:,3], y=data.iloc[:,4], hue=data.iloc[:,5])

 # Étiquetage
  label_point(data.iloc[:,3],data.iloc[:,4],data.iloc[:,0],ax)

 #Sauvegarder
  wfilename='testdraw.png'
  plt.savefig(wfilename)

Une partie des données

Les caractéristiques linguistiques de l'écriture de voyage ont été réduites à deux dimensions, mais les détails sont omis.

id sex age 1-dim 2-dim lab 1 1 63 147.05500793457 -81.8567810058594 me 2 2 45 -128.938018798828 88.1118698120117 fy 3 1 66 20.0744075775146 113.524360656738 me 4 1 68 -64.7453689575195 49.7739143371582 me 5 2 49 -26.7232112884521 -164.791641235352 fy

Résultat du dessin

L'identifiant est une virgule flottante, mais ce n'est pas le sujet principal, alors laissez-le tel quel. testdraw.png

Recommended Posts

Étiquetez chaque point sur le diagramme de dispersion Seaborn
Remarques sur la coloration par valeur dans le diagramme de dispersion matplotlib
Afficher l'histogramme / diagramme de dispersion sur Jupyter Notebook
Dessinez une ligne de pliage / diagramme de dispersion avec python matplotlib pour fichier CSV (2 colonnes)
Dessinez sur Jupyter en utilisant la fonction de tracé des pandas
Regardons le diagramme de dispersion avant l'analyse des données
Bases de Seaborn pour les débutants ③ Diagramme de dispersion (jointplot) * Avec histogramme