我正在绘制2个数据系列(通过pandas
从csv中获得),但是我注意到,生成的图在轴上具有预期的编号,但覆盖在两个轴上的是附加编号(从0到1.0),该值似乎不存在我的PandasDataFrame
不包含任何Series
,它对应于这个轴上的[0,1.0]编号。
我的代码如下
def create_plot(data: pd.DataFrame, figure, plotIndex):
ax = figure.add_subplot(*plotIndex)
ax.plot(data.col1, data.col2, color="#39915d", marker="o")
return figure
files = "file1",
figure, _ = plt.subplots(ncols=len(files), nrows=1)
for i, file in enumerate(files):
get_file(file)
create_plot(get_data(file)), figure, (1, len(files), i+1))
plt.show()
其中get_data方法返回一个pandas
DataFrame
。
如果任何人有任何想法是什么导致了这一点,以及如何补救它,这将是感激。
注意:我在WSL(Linux的Windows子系统)下运行python脚本,并在Windows中使用VcXsrv
,因此我可以使用X11显示图。
1条答案
按热度按时间mnemlml81#
多亏了@StonedTensor,我解决了这个问题,我通过调用
plt.subplot()
和create_plot()
函数中的figure.add_subplot
生成了两个轴。因此,为了解决这个问题,我只是将对
plt.subplot
的调用更改为plt.figure()
,这不会生成轴,并且我将轴的创建推迟到figure.add_subplot
调用。再次感谢@StonedTensor。