【问题标题】:Issues when using subplots with yellowbrick and losing legend and titles使用带有黄砖的子图并丢失图例和标题时的问题
【发布时间】:2019-09-09 10:29:56
【问题描述】:

将多个黄砖图表放入子图排列时遇到问题。标题和图例仅显示最后一个图表。我尝试了多种方法来编写代码,但无法让所有方法都显示图例和标题。我确信它可以直接开始工作。

这是一段代码:

f, ((ax1, ax2), (ax3, ax4)) = plt.subplots(2, 2,figsize=(14, 10))

viz = FeatureImportances(LinearRegression(), ax=ax1)
viz.fit(X_train, y_train)

viz = LearningCurve(LinearRegression(), scoring='r2',cv=10, ax=ax2)
viz.fit(X_train, y_train)

viz = ResidualsPlot(clf, ax=ax3)
viz.fit(X_train, y_train) 

viz = PredictionError(LinearRegression(), ax=ax4)
viz.fit(X_train, y_train) 
viz.score(X_test, y_test) 

viz.poof()

image of plots

【问题讨论】:

    标签: legend subplot yellowbrick


    【解决方案1】:

    @chris-mangum 很抱歉,您为此苦苦挣扎。除了show,我们还有另一种方法称为finalize 在这种情况下,finalize 比show 更好——show 调用finalize 然后显示或保存图形,从而结束该图,因此在多轴图中就像你一样,你不想打电话给 poof。

    f, ((ax1, ax2), (ax3, ax4)) = plt.subplots(2, 2,figsize=(14, 10))
    
    viz = FeatureImportances(LinearRegression(), ax=ax1)
    viz.fit(X_train, y_train)
    viz.finalize()
    
    viz = LearningCurve(LinearRegression(), scoring='r2',cv=10, ax=ax2)
    viz.fit(X_train, y_train)
    viz.finalize()
    
    viz = ResidualsPlot(clf, ax=ax3)
    viz.fit(X_train, y_train) 
    viz.finalize()
    
    viz = PredictionError(LinearRegression(), ax=ax4)
    viz.fit(X_train, y_train) 
    viz.score(X_test, y_test) 
    
    viz.finalize()
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-03-30
      • 2011-05-12
      • 2022-01-17
      • 2016-08-04
      • 1970-01-01
      • 2019-05-28
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多