Matplotlib with Pandas


Matplotlib with Pandas


下線plotシリーズのデータを描きましょう
df = pd.read_csv("./president_heights.csv") # csv 파일을 불러옴
fig, ax = plt.subplots()
ax.plot(df["order"], df["height(cm)"], label="height") # ax.plot(x,y,조건)
ax.set_xlabel("order") # 라벨설정
ax.set_ylabel("height(cm)")

次はポケモンのデータフレームです.

火ポケモンと水ポケモンの防御力を比較して視覚化する.
df = pd.read_csv("./data/pokemon.csv") # csv 파일 불러옴.
fire = df[(df['Type 1']=='Fire') | ((df['Type 2'])=="Fire")] # df의 type 1이 fire인가 아니면 df의 type 2가 fire인가 -> 둘 중 하나라도 fire 값이 들어있음 fire라고 변수에 정의.
water = df[(df['Type 1']=='Water') | ((df['Type 2'])=="Water")]
fig, ax = plt.subplots()
ax.scatter(fire['Attack'], fire['Defense’], color='R', label='Fire', marker="*", s=50) # ax.scatter(x축, y축, color, label, maker, size)
ax.scatter(water['Attack'], water['Defense’], color='B', label="Water", s=25)
ax.set_xlabel("Attack")
ax.set_ylabel("Defense")
ax.legend(loc="upper right")

練習4]Matplotlib with Pandas


質問する


ポケモンデータを含むcsvファイルをロードし、攻撃タイプに応じて異なる色の散点図を描き、ラベルを貼ります.
攻撃力値と守備力値はxとy軸、水型ポケモンは青、火型ポケモンは赤で表現します.
  • pokemon.csvファイルを読み込み、df変数にデータフレームとして保存します.

  • 攻撃タイプに存在するFire属性のデータのみを抽出し、fire変数に格納します.

  • 攻撃タイプにWater属性が存在するデータのみを抽出し、water変数に格納します.

  • 次の表を参照して、抽出したデータを1つの散点図とともに描画するコードを完了します.
  • 属性pewaterx軸攻撃能力値攻撃能力値y軸防御能力値防御能力値青色ラベルFireWaterタグ*サイズ5025
    from elice_utils import EliceUtils
    import numpy as np
    import pandas as pd
    import matplotlib.pyplot as plt
    
    elice_utils = EliceUtils()
    
    # 아래 경로에서 csv파일을 읽어서 df 변수에 저장해보세요.
    # 경로: "./data/pokemon.csv"
    df = None
    
    # 공격 타입 Type 1, Type 2 중에 Fire 속성이 존재하는 데이터들만 추출해보세요.
    fire = df
    # 공격 타입 Type 1, Type 2 중에 Water 속성이 존재하는 데이터들만 추출해보세요.
    water = df
    
    fig, ax = plt.subplots()
    # 왼쪽 표를 참고하여 아래 코드를 완성해보세요.
    ax.scatter(fire['Attack'], fire['Defense'],
        marker='*', color=None, label=None, s=None)
    ax.scatter(water['Attack'], water['Defense'],
        marker='.', color=None, label=None, s=None)
    
    ax.set_xlabel("Attack")
    ax.set_ylabel("Defense")
    ax.legend(loc="upper right")
    
    # elice에서 그래프 확인하기
    fig.savefig("plot.png")
    elice_utils.send_image("plot.png")

    code

    # 아래 경로에서 csv파일을 읽어서 df 변수에 저장해보세요.
    # 경로: "./data/pokemon.csv"
    df = pd.read_csv("./data/pokemon.csv")
    
    # 공격 타입 Type 1, Type 2 중에 Fire 속성이 존재하는 데이터들만 추출해보세요.
    fire = df[(df['Type 1'] == 'Fire') | (df['Type 2'] == 'Fire')]
    # 공격 타입 Type 1, Type 2 중에 Water 속성이 존재하는 데이터들만 추출해보세요.
    water = df[(df['Type 1'] == 'Water') |(df['Type 2'] == 'Water')]
    
    fig, ax = plt.subplots()
    # 왼쪽 표를 참고하여 아래 코드를 완성해보세요.
    ax.scatter(fire['Attack'], fire['Defense'],
        marker='*', color='R', label='Fire', s=50)
    ax.scatter(water['Attack'], water['Defense'],
        marker='.', color='B', label='Water', s=25)

    実行結果