首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何将列更改为连续数据,以便在ggplot2上绘制它?

如何将列更改为连续数据,以便在ggplot2上绘制它?
EN

Stack Overflow用户
提问于 2021-06-23 06:44:30
回答 1查看 77关注 0票数 0

你好,我在绘制三种不同动物的代谢物随时间减少的图时有困难。

这是我在情节中使用的代码:

代码语言:javascript
复制
all_met %>% 
  pivot_longer(c(Inosine mp),names_to="Metabolites",values_to="concentration") %>%
  group_by(Animal,Day, Metabolites) %>%   
  summarise(mean = mean(concentration), sd = sd(concentration)) %>%   
  ggplot(aes(x=factor(Day),y= mean, group = Animal, colour = Animal)) +   
  geom_point()+   
  geom_smooth(method=lm, se = FALSE, formula =  y~x)+   
  stat_regline_equation() 

这给了我:

你可以看到x轴分布均匀,但我不想.根据我搜索的内容,它假设我的数据是离散的,但我不能使用scale_x_continuous,所以我想知道如何修复它。

我也想增加R^2值,但是它与方程重叠,所以也有办法将方程移到图的其他地方吗?

数据

代码语言:javascript
复制
structure(list(Animal = c("Beef", "Beef", "Beef", "Beef", "Beef", 
"Beef", "Beef", "Beef", "Beef", "Beef", "Beef", "Beef", "Beef", 
"Beef", "Beef", "Beef", "Beef", "Beef", "Beef", "Beef", "Beef", 
"Beef", "Beef", "Beef", "Beef", "Beef", "Beef", "Beef", "Beef", 
"Beef", "Beef", "Beef", "Beef", "Beef", "Beef", "Beef", "Lamb", 
"Lamb", "Lamb", "Lamb", "Lamb", "Lamb", "Lamb", "Lamb", "Lamb", 
"Lamb", "Lamb", "Lamb", "Lamb", "Lamb", "Lamb", "Lamb", "Lamb", 
"Lamb", "Lamb", "Lamb", "Lamb", "Lamb", "Lamb", "Lamb", "Lamb", 
"Lamb", "Lamb", "Lamb", "Venison", "Venison", "Venison", "Venison", 
"Venison", "Venison", "Venison", "Venison", "Venison", "Venison", 
"Venison", "Venison", "Venison", "Venison", "Venison", "Venison",
"Venison", "Venison", "Venison", "Venison", "Venison", "Venison", 
"Venison", "Venison", "Venison", "Venison", "Venison", "Venison", 
"Venison", "Venison", "Venison", "Venison", "Venison", "Venison",
"Venison", "Venison"), Day = c(0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 
1, 1, 3, 3, 3, 3, 3, 3, 5, 5, 5, 5, 5, 5, 7, 7, 7, 7, 7, 7, 9, 
9, 9, 9, 9, 9, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 3, 3, 3, 3, 
3, 5, 5, 5, 5, 5, 5, 7, 7, 7, 7, 7, 0, 0, 0, 0, 0, 0, 0.25, 0.25, 
0.25, 0.25, 0.25, 0.25, 0.79, 0.79, 0.79, 0.79, 0.79, 0.79, 0.125, 
0.125, 0.125, 0.125, 0.125, 0.125, 1.75, 1.75, 1.75, 1.75, 1.75, 
1.75, 2.25, 2.25, 2.25, 2.25, 2.25, 2.25)), row.names = c(NA, 
-100L), class = c("tbl_df", "tbl", "data.frame"))
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-06-23 13:03:15

因为您将x声明为因数(x=factor(Day)),所以x轴是离散的,而不是连续的(即数字)。去掉因子函数,你就会得到一个连续的轴。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68094803

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档