2017-09-26 5 views
2

도시별로 데이터를 선 그래프로 표시하는 함수를 만들었습니다. 나는 사용자가 범례에서 각 도시의 레이블을 변경할 수 있기를 바랍니다.R ggplot2는 전설에 악센트를주었습니다

단순화 된 예 :

example_plot <- function(plot_labs = c("Anvers", "Liège")){ 

graphics.off() 

input <- data.table(x_axis = c(1, 2, 3, 4, 5, 1, 2, 3, 4, 5), 
       y_axis = c(5, 6, 4, 2, 8, 9, 3, 1, 7, 5), 
       City = c("Anvers", "Anvers", "Anvers", "Anvers", "Anvers", 
         "Liege", "Liege", "Liege", "Liege", "Liege")) 

ggplot(data = input, aes(x = x_axis, y = y_axis, group = City, lty = City)) + 
geom_line() + scale_linetype_manual(labels = plot_labs, breaks = c("Anvers", 
"Liege"), values = 1:2) 
} 

내 문제 :

나는 "example_plot.R"로 기능을 저장하고 인수없이 명령 프롬프트에 전화, 리에 "의 악센트 "제대로 표시되지 않습니다

example_plot() 

enter image description here

나는 plot_labs으로 함수를 호출하는 경우

제대로 인수, 그것은 표시 :

example_plot(plot_labs = c("Anvers", "Liège")) 

enter image description here

내가 심지어 낯선 찾으 나는 경우에 함수의 코드를 복사 - 붙여 넣기 때문이다 명령 프롬프트 ('source (example_plot.R ")'대신)를 입력하면 모든 것이 정상적으로 작동합니다.

기능을 저장하면 왜 다르게 동작하는지 알고 싶습니다.

+0

이것은 파일 저장 방법과 관련이 있습니다 (utf8 또는 ascii –

답변

2

아마도 소스 파일을 UTF-8 같은 인코딩으로 저장 한 다음 다시 열거 나 라틴어 -1로 가정하여 소스 파일을 가져올 수 있습니다.

RStudio를 사용하는 경우 메뉴에서 파일/인코딩으로 저장을 선택하고 인코딩으로 파일/열기를 선택하고 문자 인코딩이 일치하는지 확인하십시오.

+0

). 고맙습니다. source ("example_plot.R", encoding = "utf-8")가 작동했습니다. –