Python 如何为yellowbrick剩余地块设置颜色

Python 如何为yellowbrick剩余地块设置颜色,python,matplotlib,yellowbrick,Python,Matplotlib,Yellowbrick,我想用它来显示线性回归模型的残差。从文档中,我可以看到回归图接受训练数据集的单一颜色值 列车颜色,默认值:“b” 训练数据的残差用该颜色绘制,但也给出了0.5的不透明度,以确保 测试数据残差更为明显。可以是任何matplotlib颜色 我想让各个分散点的颜色与绘制回归点和数据点的可比图相匹配 将numpy导入为np 从scipy.stats导入回归 将matplotlib.pyplot作为plt导入 从yellowbrick.Regressionor导入剩余图 从sklearn.linear\u

我想用它来显示线性回归模型的残差。从文档中,我可以看到
回归图
接受训练数据集的单一颜色值

列车颜色,默认值:“b” 训练数据的残差用该颜色绘制,但也给出了0.5的不透明度,以确保
测试数据残差更为明显。可以是任何matplotlib颜色

我想让各个分散点的颜色与绘制回归点和数据点的可比图相匹配

将numpy导入为np
从scipy.stats导入回归
将matplotlib.pyplot作为plt导入
从yellowbrick.Regressionor导入剩余图
从sklearn.linear\u模型导入线性回归
数据=np.数组([[5.71032104e-01,2.33781600e+03],
[6.28682565e-01,2.25247200e+03],
[1.23262572e+00,2.82244800e+03],,
[7.44029502e-01,2.49936000e+03],
[4.01478749e-01,2.04825600e+03],
[3.46455997e-01,2.32867200e+03],
[5.1577874E-01,2.39268000e+03],
[4.16115498e-01,2.20218000e+03],
[3.24103999e-01,2.07264000e+03],
[4.2952051E-01,1.97815200e+03],
[7.72794999e-01,2.46278400e+03]]
x=数据[:,1]
y=数据[:,0]
name=np.array(['COTTONWOOD CREEK'、'Emigant SUMMIT'、'GRAND TARGHEE',
“菲利普斯长凳”、“松溪山口”、“盐河顶峰”,
“塞奇威克峰”、“斯拉格溪分水岭”、“松森牧场”,
'野马分水岭','柳树溪'],dtype=object)
颜色=['a6cee3'、'1f78b4'、'b2df8a'、'33a02c'、'fb9a99'、'e31a1c'、'fdbf6f'、'ff7f00'、'cab2d6'、'6a3d9a'、'ffff99']
斜率,截距,r_值,p_值,标准误差=线性回归(x,y)
xHat=np.linspace(x.min()-300,x+300100)
yHat=y*斜率+截距
颜色=['a6cee3'、'1f78b4'、'b2df8a'、'33a02c'、'fb9a99'、'e31a1c'、'fdbf6f'、'ff7f00'、'cab2d6'、'6a3d9a'、'ffff99']
图(ax,ax1)=plt.子批次(nrows=2)
对于zip中的名称、x、y、颜色(名称、x、y、颜色):
散点(x,y,label=name,c=color)
坐标图(xHat,xHat*斜率+截距,'k--',标记=无)
最大设定值(x.min()-200,x.max()+200)
支腿=轴图例(fontsize='x-small',loc='右下角')
ax.text(1934,1.27,'y='+str(np.round(slope,6))+'x'+str(np.round(intercept,3)))
ax.text(1934,1.1,'R$^2$='+str(np.round(R_值**2,4)))
linreg=线性回归()
vizul=剩余图(linreg,hist=False)
尺寸配合(x形整形(-1,1),y形整形(-1,1))
vizul.poof(ax=ax1)
plt.紧_布局()

是否可以在不必对剩余图使用基本matplotlib的情况下实现这一点


谢谢。

你有没有尝试过在你提到的论点中加入一系列色彩?如果这不起作用,你可以从生成的散点图中获取颜色数组并覆盖它。这与我的想法一致。我已经知道要从
颜色中指定的颜色。我不知道如何实现这些……好吧,假设您以这种方式定义散点图,
scat=ax.scatter(listX,listY)
,那么您可以简单地使用'scat.set_color(listC)`更改所有点的颜色,对于这些点,listC包含可以是RGBA元组或颜色字符串的
len(listX)
项()。然后,它们中的每一个将定义每个点的颜色。