下面是一个几乎完全符合我想要的情节的示例代码.根据下面定义的minor_breaks,我想要添加的唯一内容是x轴上的刻度线(与主刻度相同的大小).
df <- data.frame(x = c(1900,1950,2000), y = c(50,75,60))
p <- ggplot(df, aes(x=x, y=y))
p + geom_line() +
scale_x_continuous(minor_breaks = seq(1900,2000,by=10), breaks = seq(1900,2000,by=50), limits = c(1900,2000), expand = c(0,0)) +
scale_y_continuous(breaks = c(20,40,60,80), limits = c(0,100)) +
theme(legend.position="none", panel.background = element_blank(),
axis.line = element_line(color='black'), panel.grid.minor = element_blank())
Run Code Online (Sandbox Code Playgroud)
在此先感谢, - .JT
我想要那些在刻面网格中带有标签的刻度线。所以我完成了这次尝试,并尝试将其调整为像这样的分面网格图:
定义中断和标签,次要和主要:
range.f <- range(unique(df1$weeks))
minor.f <- 1 # every 1 week, NOTE: range.f[2] should be divisible by minor.f!
major.f <- 5 # every 5 weeks
breaks.f <- seq(range.f[1], range.f[2], minor.f)
every_nth.lt <- function (x, nth) {x[1:nth != 1] <- ""; x}
# (lite version of /sf/answers/2417343141/
# works better for me than `insert_minor()`)
labels.f <- every_nth.lt(sequence(range.f[2]), major.f)
n_minor.f <- major.f / minor.f - 1
Run Code Online (Sandbox Code Playgroud)
正常情节:
library(ggplot2)
p.f <- ggplot(df1, aes(weeks, births)) +
geom_bar(stat="identity", fill="#F48024") + theme_bw() + …Run Code Online (Sandbox Code Playgroud) 我一直在我的直方图上显示小刻度线的问题。我尝试了绘制未标记的主要刻度线的想法,但不会显示刻度线。我的代码非常繁琐,可能有一些多余的行。任何帮助,将不胜感激。
ggplot(data=Shrimp1, aes(Shrimp1$Carapace.Length))+
geom_histogram(breaks=seq(3.5, 25, by=0.1),
col="black",
fill="gray",
alpha=1)+
labs(title="Total Female Carapace Length")+
labs(x="Carapace Length (mm)", y="# of Shrimp")+
xlim(c(3.5, 25))+
theme_bw()+
scale_y_continuous(expand = c(0,0),
limits = c(0,200))+
scale_x_continuous(breaks=seq(2.5,25,2.5))+
theme(axis.text.x=element_text(size=30,angle=45,hjust=1))+
theme(plot.title=element_text(size=30, hjust=0.5))+
theme(axis.text=element_text(size=30, color = "black"),
axis.title=element_text(size=30,face="bold"))+
theme(panel.grid.major=element_line(colour="white"),
panel.grid.minor = element_line(colour = "white"))+
theme(panel.border=element_blank())+
theme(axis.ticks.x = (element_line(size=2)),
axis.ticks.y=(element_line(size=2)))+
theme(axis.ticks.length=unit(.55, "cm"))+
theme(panel.border=element_blank(), axis.line.x=element_line(colour="black"),
axis.line.y=element_line(colour="black"))
Run Code Online (Sandbox Code Playgroud)
存在主要刻度,但我需要它们之间以 0.1 的间隔进行次要刻度
