我正在用Python为两个组绘制一个折线图,我还想添加两条趋势线。数据位于数据框df
中
data = [[1, 4.5,'group1'], [2, 4.25,'group1'], [3, 3.75,'group1'],[4, 3.5,'group1'],[1, 4.0,'group2'],[2, 3.75,'group2'],[3, 4.0,'group2'],[4, 4.25,'group2']]
#Create the pandas DataFrame
df = pd.DataFrame(data, columns = ['xvar', 'yvar','category'])
我使用以下代码创建一个折线图。我希望趋势线是虚线,而不是默认的实线,因此我在geom_smooth()中包含了linetype='domind'。但是,我希望趋势线具有两组的各自线颜色,我希望通过scale\u color\u手册规范实现这一点
ggplot(figure1data, aes(x='xvar', y='yvar', color='category')) + geom_line() + geom_point() + labs(x="Xvar",y="Yvar") + ylim(3.5,4.5) + theme_classic() + theme(legend_title=element_blank()) + geom_smooth(mapping=aes(linetype='dotted'),method='lm',se=False) + scale_color_manual(values=('darkblue','darkred'))
但我得到了这个错误:
PlotnineError: "Could not evaluate the 'linetype' mapping: 'dotted' (original error: name 'dotted' is not defined)"
我遵循给出的文档。不知道出了什么问题
几个resources表示两个组的线型可以更改,但这不是我想要实现的。我希望趋势线的线型相同,但与主线不同
这可以通过将线型设置为
aes()
之外的参数来实现,如下所示:相关问题 更多 >
编程相关推荐