0
私の現在のコードは、csvファイルからリストを取得し、ユーザが選択してプロットできるようにヘッダをリストします。パンダを使用してセカンダリY軸をプロットする?
import pandas as pd
df = pd.DataFrame.from_csv('log40a.csv',index_col=False)
from collections import OrderedDict
headings = OrderedDict(enumerate(df,1))
for num, heading in headings.items():
print("{}) {}".format(num, heading))
print ('Select X-Axis')
xaxis = int(input())
print ('Select Y-Axis')
yaxis = int(input())
df.plot(x= headings[xaxis], y= headings[yaxis])
私の最初の質問です。セカンダリY軸を追加するにはどうすればいいですか?私はmatplotlibを使って最初に人物を作ってから最初のyaxisをxaxisでプロットし、次に同じことを2番目のyaxisに行います。しかし、私はパンダでどのように行われているのか分かりません。それは似ていますか?
私はそれを行うにはmatplotlibのを使ってみましたが、それは私にエラーを与えた:
fig1 = plt.figure(figsize= (10,10))
ax = fig1.add_subplot(211)
ax.plot(headings[xaxis], headings[yaxis], label='Alt(m)', color = 'r')
ax.plot(headings[xaxis], headings[yaxis1], label='AS_Cmd', color = 'blue')
エラー:あなたが上にプロットしたい列名を持つ配列を作成する必要が
ValueError: Unrecognized character a in format string
インデックスと列の部分について詳しく教えてください。私は、私が彼にプロットしたい列を私に与える必要があるので、事前に列番号を指定しようとしていません。もし私があなたがしたことをしたら、列が設定されます。 –
A)入力を配列に設定し、将来の値を追加するか、またはB)ユーザーが複数のメソッドを入力できるようにし、文字列を分割された値の配列に分割する必要があります。おそらく最も簡単な分割方法の回答を更新しました。 – sdhaus
私はあなたが今何を意味するかを見ます。しかし、私があなたの解決策を試したとき。私はエラーが発生しましたTypeError:unhashable型: 'list'。注:文字列を受け取るようにyaxis = input()を変更しました。 –