matplotlibでの縦軸、横軸の指定をしたい
湿度センサDHT11と心拍センサを用いて感情別にクラスタ分析をしたいのですが、
matplotlibで可視化しようと思い、取得したデータをcsvファイルに保存し、csvファイルを読み取って表示させているのですが、以下のような結果になってしまいます
縦軸を心拍数、横軸を湿度として結果を表示させることが目標です
発生している問題
![イメージ説明](869afae72cfcc1fb85735bd1ade5f5ce.png)
該当のソースコード
python
1#!/usr/bin/env python 2# -*- coding: utf-8 -*- 3 4from matplotlib.colors import ListedColormap 5colors = ['red','blue'] 6cmap = ListedColormap(colors) 7from sklearn import datasets 8from sklearn.cluster import KMeans 9import pandas as pd 10import matplotlib.pyplot as plt 11import numpy as np 12 13 14def main(): 15 # クラスタ数 16 N_CLUSTERS = 2 17 18 # Blob データを生成する 19 ##dataset = datasets.make_blobs(centers=N_CLUSTERS) 20 21 22 # 正解ラベルは使わない 23 # targets = dataset[1] 24 data = pd.read_csv('heartRate1.csv',names=('cute','ang')) 25 26 #del(data['cute']) 27 #del(data['ang']) 28 29 30 #data_array = data.as_matrix().T 31 32 data_array = np.array([data['cute'].tolist(), 33 data['ang'].tolist()], np.int32) 34 35 36 # 特徴データ 37 features = data_array.T 38 39 # クラスタリングする 40 cls = KMeans(n_clusters=N_CLUSTERS) 41 pred = cls.fit_predict(features) 42 43 # 各要素をラベルごとに色付けして表示する 44 45 46 ##for i in range(N_CLUSTERS): 47 ## labels = features[pred == i] 48 plt.scatter(features[:, 0], features[:, 1], c=pred, cmap=cmap) 49 50 # クラスタのセントロイド (重心) を描く 51 centers = cls.cluster_centers_ 52 plt.scatter(centers[:, 0], centers[:, 1], s=80, 53 marker='p', edgecolors='k', c=range(N_CLUSTERS), cmap=cmap) 54 55 plt.show() 56 57 58if __name__ == '__main__': 59 main()
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。