x轴使用因子值时R语言plot函数的col参数失效问题
问题原因
当你向plot()传入包含因子列的data.frame时,R默认调用plot.factor函数生成箱线图(即使每个因子水平仅对应一个数据点,箱线图会简化为一条横线)。此时col参数控制的是箱线的填充颜色,而非数据点的颜色,所以设置col="red"无法看到预期效果。
解决方案
以下几种方法可以解决这个问题:
方法1:明确指定x、y并设置点样式
直接指定绘图的x和y变量,同时设置点样式(pch),让颜色参数生效:plot(quarterly_analysis$Quarter, quarterly_analysis$AvgDefault, col="red", pch=16)pch=16代表实心圆点,能更清晰地显示颜色。方法2:将因子转为数值并自定义x轴标签
既保留x轴的连续性,又能正常设置点颜色:# 把因子转为数值 quarterly_analysis$Quarter_num <- as.numeric(quarterly_analysis$Quarter) # 绘图并隐藏默认x轴 plot(quarterly_analysis$Quarter_num, quarterly_analysis$AvgDefault, col="red", pch=16, xaxt="n") # 自定义x轴标签为原季度格式 axis(1, at=quarterly_analysis$Quarter_num, labels=quarterly_analysis$Quarter)方法3:使用stripchart绘制因子对应的数据点
stripchart专门用于展示因子分组的数据点,颜色参数直接生效:stripchart(quarterly_analysis$AvgDefault ~ quarterly_analysis$Quarter, col="red", pch=16)
内容的提问来源于stack exchange,提问作者Priyansh
相关产品推荐
相关产品推荐

