回答編集履歴

1

edit

2017/12/25 10:04

投稿

mkgrei
mkgrei

スコア8560

test CHANGED
@@ -9,3 +9,59 @@
9
9
 
10
10
 
11
11
  もしくは点が十分あることを期待して、`ls='none'`して`marker='.'`のように点でプロットすればよいかと思われます。
12
+
13
+
14
+
15
+ ---
16
+
17
+
18
+
19
+ 結合方法に改善の余地しかありませんが、雰囲気だけ。
20
+
21
+
22
+
23
+ ```python
24
+
25
+ import pandas as pd
26
+
27
+ import matplotlib.pyplot as plt
28
+
29
+ #等間隔時間インデックスを用意
30
+
31
+ rng = pd.date_range('20110101', '20110103', freq='H')
32
+
33
+ df_eq = pd.DataFrame({'data':np.nan} , index=rng)
34
+
35
+
36
+
37
+ #よるの時間帯が抜けたデータを用意
38
+
39
+ rng = pd.date_range('201101010700', '201101011900', freq='H')
40
+
41
+ df = pd.DataFrame({'data': np.random.randn(len(rng))}, index=rng)
42
+
43
+ rng = pd.date_range('201101020700', '201101021900', freq='H')
44
+
45
+ t = pd.DataFrame({'data': np.random.randn(len(rng))}, index=rng)
46
+
47
+ df = pd.concat([df, t])
48
+
49
+
50
+
51
+ #結合
52
+
53
+ df = df.merge(df_eq, how='right', left_index=True, right_index=True)
54
+
55
+ df.drop('data_y', axis=1, inplace=True)
56
+
57
+
58
+
59
+ #プロット
60
+
61
+ fig, ax = plt.subplots(dpi=200)
62
+
63
+ df.plot(marker='.', ax=ax)
64
+
65
+ plt.show()
66
+
67
+ ```