web-dev-qa-db-ja.com

1つのデータポイントをプロットする方法は?

線と点をプロットする次のコードがあります。

df = pd.DataFrame({'x': [1, 2, 3], 'y': [3, 4, 6]})
point = pd.DataFrame({'x': [2], 'y': [5]})
ax = df.plot(x='x', y='y', label='line')
ax = point.plot(x='x', y='y', ax=ax, style='r-', label='point')

単一のデータポイントを表示するにはどうすればよいですか?

Plot with line and no point

21
Peter Knutsen

単一のデータポイントをプロットする場合、ラインを使用してプロットすることはできません。考えてみると、これは明らかです。なぜなら、ラインをプロットするとき、実際にbetweenデータポイントをプロットするからです。回線を接続するものは何もありません。

ただし、マーカーを使用して単一のデータポイントをプロットできますが、これらは通常、データポイントに直接プロットされるため、データポイントが1つだけであるかどうかは関係ありません。

現在使用している

ax = point.plot(x='x', y='y', ax=ax, style='r-', label='point')

プロットする。これにより、赤い線が生成されます(rは赤、-)。次のコードを使用すると、青い十字が表示されます(青の場合はb、十字の場合はx)。

ax = point.plot(x='x', y='y', ax=ax, style='bx', label='point')

pandasは内部的にmatplotlibをプロットに使用します。さまざまなスタイルの引数をテーブルで見つけることができます here 。異なるスタイル(たとえば、複数のデータポイントがあるときにマーカーが必要ない場合)を選択するには、データセットの長さを確認してから適切なスタイルを使用します。

4
Ffisegydd

単一の点をプロットするには、次のようなことができます。

plt.plot([x], [y], marker='o', markersize=3, color="red")
75