回答編集履歴
3
追記
answer
CHANGED
@@ -1,3 +1,28 @@
|
|
1
1
|
subplotを使わないのであれば、`sns.boxplot(x="都道府県", y="価格", hue="建物", data=df)`で良い訳ですが、
|
2
2
|
|
3
|
-
subplotを使うとしたら、データフレームを都道府県ごとに抽出して、`ax`引数にsubplotを渡せば良いのでは。
|
3
|
+
subplotを使うとしたら、データフレームを都道府県ごとに抽出して、`ax`引数にsubplotを渡せば良いのでは。
|
4
|
+
|
5
|
+
```python
|
6
|
+
import pandas as pd
|
7
|
+
import seaborn as sns
|
8
|
+
import matplotlib.pyplot as plt
|
9
|
+
|
10
|
+
# データフレームの準備
|
11
|
+
pref = ["東京", "東京", "東京", "埼玉", "埼玉", "埼玉", "東京", "東京", "埼玉", "埼玉"]
|
12
|
+
house = ["木造", "鉄骨", "木造", "鉄骨", "木造", "鉄骨", "鉄骨", "鉄骨", "木造", "木造"]
|
13
|
+
value = [100, 120, 100, 80, 80, 90, 90, 130, 100, 60]
|
14
|
+
df = pd.DataFrame({'都道府県':pref, '建物': house, '価格':value})
|
15
|
+
|
16
|
+
fig, axes = plt.subplots(7, 7, figsize=(50, 50), sharey=True)
|
17
|
+
|
18
|
+
pref_list = ["東京", "埼玉"]
|
19
|
+
for i, pref in enumerate(pref_list):
|
20
|
+
i, j = i // 7, i % 7
|
21
|
+
data = df.query(f"都道府県=='{pref}'")
|
22
|
+
sns.boxplot(x="都道府県", y="価格", hue="建物", data=data, ax=axes[i, j])
|
23
|
+
|
24
|
+
plt.show()
|
25
|
+
|
26
|
+
```
|
27
|
+
|
28
|
+

|
2
ミスってたので一回消す
answer
CHANGED
@@ -1,25 +1,3 @@
|
|
1
1
|
subplotを使わないのであれば、`sns.boxplot(x="都道府県", y="価格", hue="建物", data=df)`で良い訳ですが、
|
2
2
|
|
3
|
-
subplotを使うとしたら、データフレームを都道府県ごとに抽出して、`ax`引数にsubplotを渡せば良いのでは。
|
3
|
+
subplotを使うとしたら、データフレームを都道府県ごとに抽出して、`ax`引数にsubplotを渡せば良いのでは。
|
4
|
-
|
5
|
-
```python
|
6
|
-
import pandas as pd
|
7
|
-
import seaborn as sns
|
8
|
-
import matplotlib.pyplot as plt
|
9
|
-
|
10
|
-
# データフレームの準備
|
11
|
-
pref = ["東京", "東京", "東京", "埼玉", "埼玉", "埼玉", "東京", "東京", "埼玉", "埼玉"]
|
12
|
-
house = ["木造", "鉄骨", "木造", "鉄骨", "木造", "鉄骨", "鉄骨", "鉄骨", "木造", "木造"]
|
13
|
-
value = [100, 120, 100, 80, 80, 90, 90, 130, 100, 60]
|
14
|
-
df = pd.DataFrame({'都道府県':pref, '建物': house, '価格':value})
|
15
|
-
|
16
|
-
fig, axes = plt.subplots(7, 7, figsize=(50, 50), sharey=True)
|
17
|
-
|
18
|
-
pref_list = ["東京", "埼玉"]
|
19
|
-
for i, pref in enumerate(pref_list):
|
20
|
-
i, j = i // 7, i % 7
|
21
|
-
sns.boxplot(x="都道府県", y="価格", hue="建物", data=df, ax=axes[i, j])
|
22
|
-
|
23
|
-
plt.show()
|
24
|
-
```
|
25
|
-

|
1
修正
answer
CHANGED
@@ -1,5 +1,25 @@
|
|
1
1
|
subplotを使わないのであれば、`sns.boxplot(x="都道府県", y="価格", hue="建物", data=df)`で良い訳ですが、
|
2
2
|
|
3
|
-
|
3
|
+
subplotを使うとしたら、データフレームを都道府県ごとに抽出して、`ax`引数にsubplotを渡せば良いのでは。
|
4
4
|
|
5
|
-
```python
|
5
|
+
```python
|
6
|
+
import pandas as pd
|
7
|
+
import seaborn as sns
|
8
|
+
import matplotlib.pyplot as plt
|
9
|
+
|
10
|
+
# データフレームの準備
|
11
|
+
pref = ["東京", "東京", "東京", "埼玉", "埼玉", "埼玉", "東京", "東京", "埼玉", "埼玉"]
|
12
|
+
house = ["木造", "鉄骨", "木造", "鉄骨", "木造", "鉄骨", "鉄骨", "鉄骨", "木造", "木造"]
|
13
|
+
value = [100, 120, 100, 80, 80, 90, 90, 130, 100, 60]
|
14
|
+
df = pd.DataFrame({'都道府県':pref, '建物': house, '価格':value})
|
15
|
+
|
16
|
+
fig, axes = plt.subplots(7, 7, figsize=(50, 50), sharey=True)
|
17
|
+
|
18
|
+
pref_list = ["東京", "埼玉"]
|
19
|
+
for i, pref in enumerate(pref_list):
|
20
|
+
i, j = i // 7, i % 7
|
21
|
+
sns.boxplot(x="都道府県", y="価格", hue="建物", data=df, ax=axes[i, j])
|
22
|
+
|
23
|
+
plt.show()
|
24
|
+
```
|
25
|
+

|