Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/304.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python Pandas或matplotlib在将具有不同索引的多个数据帧组合到单个绘图中时会错误地移动x值_Python_Pandas_Dataframe_Matplotlib - Fatal编程技术网

Python Pandas或matplotlib在将具有不同索引的多个数据帧组合到单个绘图中时会错误地移动x值

Python Pandas或matplotlib在将具有不同索引的多个数据帧组合到单个绘图中时会错误地移动x值,python,pandas,dataframe,matplotlib,Python,Pandas,Dataframe,Matplotlib,如何使用pandas将这两个CSV文件打印到同一个图形中 # df1.csv T,100,200,300,400,500,600,700,800,900,1000 10^17,0.000395514,0.00111554,9.75478e-05,8.82842e-05,0.000195049,0.000168988,0.000107534,6.45815e-05,4.65528e-05,4.91799e-05 10^18,0.0015543,0.00529097,0.00775261,0.002

如何使用pandas将这两个CSV文件打印到同一个图形中

# df1.csv
T,100,200,300,400,500,600,700,800,900,1000
10^17,0.000395514,0.00111554,9.75478e-05,8.82842e-05,0.000195049,0.000168988,0.000107534,6.45815e-05,4.65528e-05,4.91799e-05
10^18,0.0015543,0.00529097,0.00775261,0.00279436,0.000279994,1.10931e-05,7.38623e-07,4.41783e-06,8.23956e-06,1.72932e-05
10^19,0.00313802,0.0155777,0.030378,0.0410598,0.0377613,0.0207677,0.00835572,0.00326071,0.00135329,0.000599954
10^20,0.0027506,0.022583,0.0591009,0.0967276,0.123353,0.133666,0.126835,0.106393,0.0806346,0.058811
10^21,0.0024868,0.0213928,0.0536278,0.0904901,0.124033,0.148728,0.162047,0.164976,0.162849,0.165446
我试过了

df1=pd.read\u csv(“df1.csv”)
df2=pd.read\u csv(“df2.csv”,index\u col=0).T
ax=df1.绘图(marker=“o”)
df2.绘图(x=“T”,y=“zT”,ax=ax,marker=“o”,label=“base”)
但这不知何故为第一个数据帧生成了错误的x值

IIUC,我会尝试:

df1 = pd.read_csv("df1.csv", index_col='T')
# change column name to numbers
df1.columns = pd.to_numeric(df1.columns, errors='ignore')

df2 = pd.read_csv("df2.csv", index_col=0).T

# plot the transpose of df1
ax = df1.T.plot(marker="o")
df2.plot(x="T", y="zT", ax=ax, marker="o", label="base")
输出:

IIUC,我会尝试:

df1 = pd.read_csv("df1.csv", index_col='T')
# change column name to numbers
df1.columns = pd.to_numeric(df1.columns, errors='ignore')

df2 = pd.read_csv("df2.csv", index_col=0).T

# plot the transpose of df1
ax = df1.T.plot(marker="o")
df2.plot(x="T", y="zT", ax=ax, marker="o", label="base")
输出: