# ---
# jupyter:
#   jupytext:
#     text_representation:
#       extension: .py
#       format_name: light
#       format_version: '1.5'
#       jupytext_version: 1.14.4
#   kernelspec:
#     display_name: Python 3
#     language: python
#     name: python3
# ---

import matplotlib.pyplot as plt
import pandas as pd

# +
fig = plt.figure()
ax = fig.add_subplot(111)

data = [0, 1]
ax.plot(data)

# 図をインライン表示
plt.show()

# +
# 補足： フィギュアは、サブプロットを描画する領域
# サブプロットはグラフを描画するための領域
fig = plt.figure()

ax1 = fig.add_subplot(231) # 二行三列の１番
ax2 = fig.add_subplot(232) # 二行三列の２番
ax3 = fig.add_subplot(233) # 二行三列の３番
ax4 = fig.add_subplot(234) # 二行三列の4番
ax5 = fig.add_subplot(2, 3, 5) # 二行三列の３番 カンマ区切りやで指定する例
ax6 = fig.add_subplot(2, 3, 6) # 二行三列の4番 カンマ区切りで指定する例

for i, ax in enumerate([ax1, ax2, ax3, ax4, ax5, ax6], start=1):
    txt ='ax{0}\n23{0}'.format(i)
    ax.text(0.2, 0.4, txt, fontsize=16)

plt.show()

# +
# plt#subplots()で、フィギュアオブジェクトの生成とサブプロットの配置を同時に行う
fig, axes = plt.subplots(2, 2)

print(type(axes), axes)
plt.show()


# +
# ggplotスタイルで描画してみる
plt.style.use('ggplot')

fig = plt.figure()
ax = fig.add_subplot(1, 1, 1)

data = [0, 1]
ax.plot(data)

plt.show()

# +
fig = plt.figure()
ax = fig.add_subplot(1, 1, 1)

x  = [0, 2, 4]
y  = [0, 4, 2]
y2 = [4, 0, 2]
y3 = [1, 3, 9]

ax.plot(x, y)
ax.plot(x, y2)
ax.plot(x, y3)

plt.show()
# -

df = pd.read_csv( '../sample_data/anime_stock_returns.csv', index_col=0, parse_dates=['Date'])
df.head()

# +
fig = plt.figure(figsize=(10,4))
ax = fig.add_subplot(1, 1, 1)

# データと凡例を指定
ax.plot(df.index, df['TOEI ANIMATION'], label='TOEI ANIMATION')
ax.plot(df.index, df['IG Port'], label='IG Port')


# タイトル、軸ラベルを指定
ax.set_title('株価暴落率 二年間の推移')
ax.set_ylabel('株価暴落率')
ax.set_xlabel('年月')

# 凡例を有効化
ax.legend()

plt.show()
# -

df4816 = pd.read_csv( '../sample_data/4816.csv', index_col=0, parse_dates=['Date'])
df4816.head()

# +
fig4816 = plt.figure(figsize=(10,4))
ax1 = fig4816.add_subplot(1, 1, 1)

ax1.plot(df4816.index, df4816['Close'], color='b', label='株価')

# X軸を共有しY軸を２つ使用する設定
ax2 = ax1.twinx()
# ax2.bar(df4816.index, df4816['Volume'], color='g', label='出来高', width = 2)
ax2.plot(df4816.index, df4816['Volume'], color='g', label='出来高')

# 軸と軸ラベルと凡例の設定
ax1.set_yticks([i * 2000 for i in range(5)])
ax1.set_ylabel('株価')
ax1.set_xlabel('年月')
ax1.legend(loc=1)

ax2.set_yticks([i * 50000 for i in range(5)])
ax2.set_ylabel('出来高')
ax2.legend(loc=2)

# グラフタイトルの設定
ax1.set_title('株価と出来高')

plt.show()
# -



StarcoderdataJupyterScriptsDedupFiltered