pyplot を使う

pyplot Excel 日付変換

それでは日付デ-タを見やすい形式に変換していきます。
先に、日付デ-タ変換スクリプトを表示します。


xDate = []
xD = []
for i, key in enumerate(Date):
  if(i % 5 == 0):
    e4 = str(key)[4:10]   #①
    e6 = e4.replace("-0", "/")#②  
    e7 = e6.replace("-", "/") #③  
    e8 = e7.lstrip("/")       #④
    xDate.append(e8)
    xD.append(i)

xData は X 軸の目盛り日付です。
そして、Python 組込関数 enumerate()を使って Date デ-タがある限り、i = 0 から 順番に for 分で処理を繰り返します。
Date の中には 30個のデ-タが存在しますので、i は 0~29 まで変化します。
今回は 5日ごとに X 軸日付を付けたいので、
if(i % 5 == 0):
として 5日ごとに日付を作成します。
また、xD は日付表示位置となります。

  1. #① 型変換

    Pandas で抜き取った Date は リスト型になっています。
    これを str 型 に変換します。
    変換してもエクセル書式がそのまま残っていますので、
    2019-06-24T00:00:00.000000000
    のように変換されます。
    余計な文字列が沢山ありますので、これを削除していきます。
    必要なのは、月日の -06-24 です。
    左から 0~3 の 4 文字と10文字以降は必要ないので
    e4 = str(Date[i])[4:10]
    とすると、6文字が取得され
    e4 には -06-24 が入ります。

  2. #② 月日が1桁の時

    月日が1桁の時は、-01 のような形をしています。
    0 は余計なのでこれを削除します。
    Python 組込関数 replace()を使って、一旦 -0 を / に置き換えます。
    第一引数に置換元文字列、第二引数に置換先文字列を指定します。
    e6 = e4.replace("-0", "/")
    e6 には /6-24 が入りました。

  3. #③ - を / に変換

    replace()を使って、月日の間の - を / に変換します。
    e7 = e6.replace("-", "/")
    e7 には /6/24 が入りました。

  4. #④ / を削除

    Python 組込関数 lstrip() で、左端の / を削除します。
    e8 = e7.lstrip("/")
    e8 には 6/24 が入りました。


やっとこれで、文字の変換ができるようになりました。
後は Python 組込関数 append() を使って、xDate 及び xD の中に積み上げて終わりです。
ちなみに、xD は
xD = [0,5,10,・・・・・,25]
となります。


変換日付を X 軸日付に埋込む

変換日付を X 軸日付に埋込むには2つのテクニックを使います。
まずは、y 軸値(Close)を呼出すための仮の x 軸値(Idx)が必要です。
Idx は 0~29 の30個の整数値です。
これは
Idx = xl_df.index
から取得することができます。
もう一つはどこに変換日付を表示するかを示す必要があります。
plt.xticks(xD, xDate)
とすると、Idx が 0,5・・・20,25 の位置に xDate を表示することができます。

pyplot-excel 完成形まとめ

以上、グラフ作成 Python ファイル pyplot-excel の完成形をまとめると


import pandas as pd
xl_df = pd.read_excel(
'file/CHART-190624-0802-py.xlsx')
Close = xl_df["Close"].values
Date = xl_df["Date"].values
Idx = xl_df.index

xDate = []
xD = []
for i, key in enumerate(Date):
  if(i % 5 == 0):
    e4 = str(Date[i])[4:10]   #①
    e6 = e4.replace("-0", "/")#②  
    e7 = e6.replace("-", "/") #③  
    e8 = e7.lstrip("/")       #④
    xDate.append(e8)
    xD.append(i)
import matplotlib.pyplot as plt
plt.xticks(xD, xDate)
plt.plot(Idx,Close)
plt.show()

となります。

pyplot-excel 完成形実行結果

実行すると


  • pyplot-excel 完成形実行結果

  • のようになるはずです。
    Run は2回以上させないとグラフはでてきませんよ。

    引き続き、Excel ファイルを読込む Python ファイル panda-sam を利用して 読み込んだデ-タでロ-ソク足チャ-トを作成していきます。


  • mpl_finance インスト-ル に進む
  • pyplot Excel ファイルグラフ化 に戻る
  • pyplot グラフファイル作成 に戻る
  • pyplot 概要 に戻る
  • Excel 読込みファイル作成 に戻る
  • pandas 概要 に戻る
  • 63PearVillage に戻る