ggplot에서 범례 제목을 변경하는 방법
저는 아래와 같은 플롯을 가지고 있습니다.다음 명령을 사용하여 작성되었습니다.
library(ggplot2)
df <- data.frame(cond = factor(rep(c("A", "B"), each = 200)),
rating = c(rnorm(200), rnorm(200, mean=.8)))
ggplot(df, aes(x=rating, fill=cond)) +
geom_density(alpha = .3) +
xlab("NEW RATING TITLE") +
ylab("NEW DENSITY TITLE")
이제 범례 제목을 초에서 NEW LEGEND TITLEGEND TITLE.
그래서 저는 위 코드의 끝에 다음 행을 추가했습니다.
+labs(colour="NEW LEGEND TITLE")
하지만 효과가 없습니다.그것을 하는 올바른 방법은 무엇입니까?

이렇게 하면 됩니다.
p <- ggplot(df, aes(x=rating, fill=cond)) +
geom_density(alpha=.3) +
xlab("NEW RATING TITLE") +
ylab("NEW DENSITY TITLE")
p <- p + guides(fill=guide_legend(title="New Legend Title"))
(또는 다른 방법으로)
p + scale_fill_discrete(name = "New Legend Title")
저는 이것을 많이 파고들지 않았지만 당신이 fill=conding ggplot을 사용했기 때문입니다.
+ labs(color='NEW LEGEND TITLE')
효과가 없었을 수도 있습니다.색을 채우기로 대체하면 효과가 있습니다!
+ labs(fill='NEW LEGEND TITLE')
이것은 나에게 megplot2_2.1.0에 효과가 있었습니다.
당신은 두 가지 밀도를 가지고 있기 때문에 당신은 당신만의 색깔을 설정하고 싶을 것입니다.scale_fill_manual.
그렇다면 다음을 수행할 수 있습니다.
df <- data.frame(x=1:10,group=c(rep("a",5),rep("b",5)))
legend_title <- "OMG My Title"
ggplot(df, aes(x=x, fill=group)) + geom_density(alpha=.3) +
scale_fill_manual(legend_title,values=c("orange","red"))

위의 코드 중 어떤 것도 나에게 효과가 없었습니다.
이게 제가 찾은 것이고 효과가 있었습니다.
labs(color = "sale year")
.\n마지막에
labs(color = 'sale year\n")
당신 코드에서 당신이 사용한 이후로ggplot(data, fill= cond)히스토그램을 만들려면 레이블 섹션의 "채우기"를 사용하여 범례 제목을 추가해야 합니다. +labs(fill="Title name") color=했다면, "ggplot(데이터, 색상=콘도)"을 할 수 .+labs(colour= "Title Name")요약하면 lab 인수는 aes 인수와 일치해야 합니다.
사용한 적이 있습니다.+ guides(fill=guide_legend("my awesome title"))gem_bar에 작동하지 것 .
간단한 그래프에 적용할 수 있는 또 다른 아주 간단한 답이 있습니다.
guide_legend() 호출을 그래프에 추가하기만 하면 됩니다.
ggplot(...) + ... + guide_legend(title="my awesome title")
아주 좋은 ggplot 문서에 나와 있는 것처럼.
이 방법이 효과가 없으면 가이드에게 전화를 걸어 가이드 매개 변수를 보다 정확하게 설정할 수 있습니다.
ggplot(...) + ... + guides(fill=guide_legend("my awesome title"))
또한 통화에 대한 매개 변수를 지정하여 모양/색상/크기를 변경할 수 있습니다.guides뿐만 아니라.
ggplot에서 facet_wrap을 사용하고 있는데 ArnaudA의 솔루션을 제외하고는 제안된 솔루션 중 어떤 것도 작동하지 않았습니다.
qplot(…) + guides(color=guide_legend(title="sale year"))
목록에 추가하기 위해 ggplot에 update_labels 함수를 사용할 수도 있습니다.
p <- ggplot(df, aes(x=rating, fill=cond)) +
geom_density(alpha=.3) +
xlab("NEW RATING TITLE") +
ylab("NEW DENSITY TITLE")
update_labels(p, list(colour="MY NEW LEGEND TITLE")
이렇게 하면 별도의 선으로 x축 및 y축 레이블을 변경할 수도 있습니다.
update_labels(p, list(x="NEW X LABEL",y="NEW Y LABEL")
아아, 이 해결책들 중 어떤 것도 저에게 효과가 없었습니다.brms::conditional_effects()의 출력으로 작업하고 있습니다.
필요한 솔루션:
+ labs( fill = "New Title", colour = "New Title", labels = "New Title" )
ggboxplot()에 대한 legend.title을 변경/지정하는 두 가지 방법이 있습니다.
library(ggpubr)
bxp.defaultLegend <- ggboxplot(ToothGrowth, x = "dose", y = "len",
color = "dose", palette = "jco")
# Solution 1, setup legend.title directly in ggboxplot()
bxp.legend <- ggboxplot(ToothGrowth, x = "dose", y = "len",
color = "dose", palette = "jco", legend.title="Dose (mg)")
# Solution 2: Change legend title and appearnace in ggboxplot() using labs() and theme() option:
plot1 <- bxp.defaultLegend + labs(color = "Dose (mg)") +
theme(legend.title = element_text(color = "blue", size = 10), legend.text = element_text(color = "red"))
ggarrange(list(bxp.legend, bxp.defaultLegend, plot1), nrow = 1, ncol = 3, common.legend = TRUE)
코드는 GitHub의 예제를 기반으로 수정됩니다.
색상을 변경했을 때 사용할 수 있도록 혼합물에 이것을 추가합니다.이것은 또한 두 개의 이산형 변수가 있는 qplot에서도 효과가 있었습니다.
p+ scale_fill_manual(values = Main_parties_color, name = "Main Parties")
제가 말씀드릴 방법은 하나의 공식으로 범례, 축, 제목 등의 레이블을 변경할 수 있으며 여러 공식을 암기할 필요가 없습니다.글꼴 스타일이나 제목 및 축의 레이블/텍스트 설계에는 영향을 주지 않습니다.
아래 질문에 대한 완전한 답변을 드립니다.
library(ggplot2)
rating <- c(rnorm(200), rnorm(200, mean=.8))
cond <-factor(rep(c("A", "B"), each = 200))
df <- data.frame(cond,rating
)
k<- ggplot(data=df, aes(x=rating, fill=cond))+
geom_density(alpha = .3) +
xlab("NEW RATING TITLE") +
ylab("NEW DENSITY TITLE")
# to change the cond to a different label
k$labels$fill="New Legend Title"
# to change the axis titles
k$labels$y="Y Axis"
k$labels$x="X Axis"
k
ggplot 출력을 변수 "k"에 저장했습니다.당신이 원하는 이름을 대셔도 됩니다.나중에 사용했습니다.
k$labels$fill ="New Legend Title"
범례를 바꾸기 위해."채움"은 다른 색상을 나타내는 라벨에 사용됩니다.만약 당신이 1점이 100을 나타내고, 다른 점이 200을 나타내는 것과 같은 크기를 나타내는 라벨이 있다면, 당신은 이 코드를 다음과 같이 사용할 수 있습니다.
k$labels$size ="Size of points"
그러면 레이블 제목이 변경됩니다.
저와 함께 작동하는 유일한 해결책은: p + guides(fill=guide_legend("New title")
공백이 포함된 R에서 테이블을 로드할 수 있는지 모르기 때문에 많은 사람들이 레이블, 범례 레이블, 제목 및 축 이름을 변경하는 데 많은 시간을 소비합니다." "그러나 탭으로 구분된 테이블(또는 기본 또는 단일 공백이 아닌 다른 구분 기호)을 로드할 때 구분 기호를 지정하여 시간을 절약하거나 코드 크기를 줄일 수 있습니다.
read.table(sep = '\t')
또는 csv 형식의 기본 로드 매개 변수를 사용합니다.
read.csv()
즉, 이름을 직접 유지할 수 있습니다."NEW LEGEND TITLE"모든 그림에서 새 범례 제목을 지정하지 않도록 원래 데이터 파일에 열 이름(키워드)으로 표시합니다.
언급URL : https://stackoverflow.com/questions/14622421/how-to-change-legend-title-in-ggplot
'programing' 카테고리의 다른 글
| 마이크로서비스 롤백 방법 (0) | 2023.07.16 |
|---|---|
| SOL_SOCKET의 용도는 무엇입니까? (0) | 2023.07.16 |
| 폴더의 Git 내역 보기 (0) | 2023.07.16 |
| Git: "현재 어떤 지점에도 없습니다."변경 사항을 유지하면서 지점으로 돌아갈 수 있는 쉬운 방법이 있습니까? (0) | 2023.07.16 |
| Git를 사용하여 원격 저장소에 초기 푸시를 수행하려면 어떻게 해야 합니까? (0) | 2023.07.16 |