質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
Matplotlib

MatplotlibはPythonのおよび、NumPy用のグラフ描画ライブラリです。多くの場合、IPythonと連携して使われます。

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

Q&A

解決済

2回答

2167閲覧

Python 散布図を書く際に、範囲指定を行いたいです。

GO20140310

総合スコア8

Matplotlib

MatplotlibはPythonのおよび、NumPy用のグラフ描画ライブラリです。多くの場合、IPythonと連携して使われます。

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

0グッド

0クリップ

投稿2018/08/28 06:29

Pythonで散布図を書く際、条件を満たすもののみを表示させたいです。どのようにコーディングすればよいのでしょうか。
データはcsvから読み込んだものです。

下記のコードに対し、
⑴「X指数が40以上のデータのみを表示」したいです。

⑵「2000年11月4日以降のデータのみを表示」したいです。

どうかご教示よろしくお願いいたします。

import numpy as np import matplotlib as mpl import matplotlib.pyplot as plt import pandas as pd import seaborn as sns %matplotlib inline df = pd.read_csv('data4.csv', index_col=0) df['性別'] = df['性別'].astype('category') plt.scatter(df['身長'], df['体重'], c=df['性別'].cat.codes) colors = {'Male':'blue','Female':'red'} for f in df['性別'].unique(): plt.scatter(df.loc[df.性別 == f ,'身長'], df.loc[df.性別 == f ,'体重'], c=colors[f], label=f) plt.legend() plt.show()

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

ベストアンサー

(1)
前提条件:'X指数'列を作成しておく

Python

1# X指数列を作成 2df['X指数'] = <何かしらの式> 3 4colors = {'Male':'blue','Female':'red'} 5for f in df['性別'].unique(): 6 selected_df = df.loc[(df.性別 == f) & (df.X指数 > 40)] 7 plt.scatter(selected_df['身長'], selected_df['体重'], c=colors[f], label=f)

(2)
前提条件:日時の列をDatetime形式で読み込んでおく

Python

1# 日時列をDatetime型で読み込む 2df = pd.read_csv('data4.csv', index_col=0, parse_dates=['日時']) 3 4colors = {'Male':'blue','Female':'red'} 5for f in df['性別'].unique(): 6 selected_df = df.loc[(df.性別 == f) & (df.日時 >= datetime.datetime(2000,11,4))] 7 plt.scatter(selected_df['身長'], selected_df['体重'], c=colors[f], label=f)

とすると良いのではないでしょうか

投稿2018/08/28 08:36

magichan

総合スコア15898

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

GO20140310

2018/08/28 10:34

大変ご丁寧にご教示頂き、本当にありがとうございます。 ⑴についてご質問させて頂きたいのですが、 df['X指数'] = <何かしらの式> の「何かしらの式」とは、具体的にどのようなものを指すのでしょうか。
magichan

2018/08/28 10:42

単に"X指数"の導き方がわからないのでこのように記述しました。 もし、元のCSVファイルに"X指数"列が既にあるのでしたら無視してください。
guest

0

値を直接入力してグラフの範囲を指定:

set_ylim([min,max])

※numpyで配列の平均値取得 ⇒ 取得値の上一桁を最大値に、下一桁を最小値に設定

投稿2018/08/28 07:18

paolo.ahn

総合スコア73

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問