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

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

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

NumPyはPythonのプログラミング言語の科学的と数学的なコンピューティングに関する拡張モジュールです。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

pandas

Pandasは、PythonでRにおけるデータフレームに似た型を持たせることができるライブラリです。 行列計算の負担が大幅に軽減されるため、Rで行っていた集計作業をPythonでも比較的簡単に行えます。 データ構造を変更したりデータ分析したりするときにも便利です。

データマイニング

データマイニングは、購買履歴やクレジットカードの利用履歴、電話の通話履歴など企業にある大量のデータを解析して、その中に隠れたパターンやルールを探し出す技術です。DMと略されることもあります。

Q&A

解決済

1回答

900閲覧

plotlyを使ってロウソク足チャートを表示しているプログラムをロウソク足を用いず表示する方法

hiragaga

総合スコア11

NumPy

NumPyはPythonのプログラミング言語の科学的と数学的なコンピューティングに関する拡張モジュールです。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

pandas

Pandasは、PythonでRにおけるデータフレームに似た型を持たせることができるライブラリです。 行列計算の負担が大幅に軽減されるため、Rで行っていた集計作業をPythonでも比較的簡単に行えます。 データ構造を変更したりデータ分析したりするときにも便利です。

データマイニング

データマイニングは、購買履歴やクレジットカードの利用履歴、電話の通話履歴など企業にある大量のデータを解析して、その中に隠れたパターンやルールを探し出す技術です。DMと略されることもあります。

0グッド

0クリップ

投稿2021/11/09 06:19

前提・実現したいこと

plotlyを使ってロウソク足チャートを表示しているプログラムをロウソク足を用いず(Closeに入っている)終値だけを使用してチャートを描くプログラムに変更したいです.以下のプログラムの

data = [ Candlestick(x=train.index, open=train['Open'], high=train['High'], low=train['Low'], close=train['Close'], name='train'), Candlestick(x=test.index, open=test['Open'], high=test['High'], low=test['Low'], close=test['Close'], name='test') ]

の部分を書き換えればできると思ったのですが,なかなかうまくいかず質問しました.

データ(goog.us.data)には以下のような値が入っています.
Date Open High Low Close Volume OpenInt
0 2014-03-27 568.00 568.00 552.92 558.46 13052 0
1 2014-03-28 561.20 566.43 558.67 559.99 41003 0
2 2014-03-31 566.89 567.00 556.93 556.97 10772 0
3 2014-04-01 558.71 568.45 558.71 567.16 7932 0
4 2014-04-02 599.99 604.83 562.19 567.00 146697 0
.. ... ... ... ... ... ... ...
911 2017-11-06 1028.99 1034.87 1025.00 1025.90 1124765 0
912 2017-11-07 1027.27 1033.96 1027.12 1033.33 1112146 0
913 2017-11-08 1030.52 1043.52 1028.45 1039.85 1088395 0
914 2017-11-09 1033.99 1033.99 1019.67 1031.05 1244886 0
915 2017-11-10 1026.46 1030.76 1025.28 1028.07 720674 0

該当のソースコード

python

1 2import pandas as pd 3from plotly.graph_objs import * 4from plotly.offline import init_notebook_mode, iplot, iplot_mpl 5init_notebook_mode() 6 7data = pd.read_csv('goog.us.txt') 8print(data) 9data['Date'] = pd.to_datetime(data['Date']) 10data = data.set_index('Date') 11print(data.index.min(), data.index.max()) 12data.head() 13date_split = '2016-01-01' 14train = data[:date_split] 15test = data[date_split:] 16len(train), len(test) 17 18 19def plot_train_test(train, test, date_split): 20 data = [ 21 Candlestick(x=train.index, open=train['Open'], high=train['High'], low=train['Low'], close=train['Close'], name='train'), 22 Candlestick(x=test.index, open=test['Open'], high=test['High'], low=test['Low'], close=test['Close'], name='test') 23 ] 24 layout = { 25 'shapes': [ 26 {'x0': date_split, 'x1': date_split, 'y0': 0, 'y1': 1, 'xref': 'x', 'yref': 'paper', 'line': {'color': 'rgb(0,0,0)', 'width': 1}} 27 ], 28 'annotations': [ 29 {'x': date_split, 'y': 1.0, 'xref': 'x', 'yref': 'paper', 'showarrow': False, 'xanchor': 'left', 'text': ' test data'}, 30 {'x': date_split, 'y': 1.0, 'xref': 'x', 'yref': 'paper', 'showarrow': False, 'xanchor': 'right', 'text': 'train data '} 31 ] 32 } 33 figure = Figure(data=data, layout=layout) 34 iplot(figure) 35 figure.write_html("pic.html") 36plot_train_test(train, test, date_split) 37

試したこと

data = [
Candlestick(x=train.index, open=train['Open'], high=train['High'], low=train['Low'], close=train['Close'], name='train'),
Candlestick(x=test.index, open=test['Open'], high=test['High'], low=test['Low'], close=test['Close'], name='test')
]
の部分を
data = [
x=train.index,y=train['Close'], name='train'),
x=test.index,y=test['Close'], name='test')
]
にして試しましたができませんでした.

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

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

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

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

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

guest

回答1

0

ベストアンサー

以下のようにすることで、終値での折れ線グラフが描画できませんでしょうか。

python

1 2 data = [ 3 Scatter(x=train.index, y=train['Close'], name='train'), 4 Scatter(x=test.index, y=test['Close'], name='test') 5 ] 6

 

【参考】
楽しみながら理解する自然言語処理入門 Python Plotly入門② – 折れ線グラフ(Line Chart)
楽しみながら理解する自然言語処理入門 Python Plotly入門④ – 折れ線グラフ(Line Chart)・散布図(Scatter Plot)の詳細

投稿2021/11/09 09:35

_whitecat_22

総合スコア1305

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

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

hiragaga

2021/11/10 04:10

参考まで載せていただいてありがとうございます! できました!
_whitecat_22

2021/11/10 04:27

解決に至って良かったです! お役に立てて嬉しいです^^
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.35%

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

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

質問する

関連した質問