0

次のデータ フレームをプロットしようとしています。X と Y はリストです。これらのリストを準備したら、辞書を使用してデータ フレームを作成します。しかし、プロットすると、実際にはプロットされません。

df = pd.DataFrame({"day": day, "ndcg@k": x, "MAP@k": y})
df2 = pd.melt(df[['day', 'ndcg@k', 'MAP@k']], id_vars=['day'])
ggplot(aes(x='day', y='value', group='variable', shape='variable', colour='variable'), data=df2) + geom_line() + geom_point()

そして、私のデータは次のようになります(融解前と融解後の両方)

      MAP@k       day    ndcg@k
0  0.201919  20150203  0.245559
1  0.198214  20150204  0.241085

        day variable     value
0  20150203   ndcg@k  0.245559
1  20150204   ndcg@k  0.241085
2  20150203    MAP@k  0.201919
3  20150204    MAP@k  0.198214
4

1 に答える 1

2

それは私のために働いています。フォローしてみてください

import pandas as pd
from  ggplot import *

df = pd.DataFrame([{"day": 20150203, "ndcg@k": 0.245559, "MAP@k": 0.201919},
                   {"day": 20150204, "ndcg@k": 0.255559, "MAP@k": 0.191919},
                    {"day": 20150205, "ndcg@k": 0.2645559, "MAP@k": 0.181919},
                    {"day": 20150203, "ndcg@k": 0.275559, "MAP@k": 0.171919},
                    {"day": 20150204, "ndcg@k": 0.285559, "MAP@k": 0.161919},
                    {"day": 20150205, "ndcg@k": 0.295559, "MAP@k": 0.151919}])

df2 = pd.melt(df[['day', 'ndcg@k', 'MAP@k']], id_vars=['day'])
df2.day = pd.to_datetime(df2.day, format = '%Y%m%d')
ggplot(aes(x='day', y='value', group='variable', shape='variable', colour='variable'), data=df2) + geom_line() + geom_point() + scale_x_date(labels = date_format('%Y-%m-%d %H:%M'))

ここに画像の説明を入力

于 2015-03-19T09:26:48.223 に答える