2017-10-20 9 views
0
  Hour CrimeFreq  
1 1:00:00 AM 547 
2 1:00:00 PM 543 
3 10:00:00 AM 472 
4 10:00:00 PM 735 
5 11:00:00 AM 464 
6 11:00:00 PM 667 
7 12:00:00 AM 741 
8 12:00:00 PM 629 
9 2:00:00 AM 601 
10 2:00:00 PM 577 
11 3:00:00 AM 383 
12 3:00:00 PM 570 
13 4:00:00 AM 215 
14 4:00:00 PM 611 
15 5:00:00 AM 159 
16 5:00:00 PM 703 
17 6:00:00 AM 189 
18 6:00:00 PM 671 
19 7:00:00 AM 235 
20 7:00:00 PM 646 
21 8:00:00 AM 349 
22 8:00:00 PM 589 
23 9:00:00 AM 422 
24 9:00:00 PM 684 

I는 I는 ggplot재 순서 x 축 그래서 시간 R에서 오후 11 자정부터 진행

ggplot(Time.Assault2014, aes(x=Hour, y= CrimeFreq, group=1)) + geom_line() 

을 사용하여 선 그래프 플롯 (큰 데이터 세트에서 집계) 상기 데이터가 그래프는 다음과 같이 나온다 :

enter image description here

내가 오후 11 자정에서 이동하는 X 축 주문할 수있는 방법이 있나요? CrimeFreq가 하루 종일 어떻게 변화하는지 보여 드리고자합니다. tableau의 그래프를 복제하는 추가 된 더 강력한 시간 코딩 및 scale_x_datetime :

는 기본적으로 나는 (타블로에서)이 같은

enter image description here

답변

0
library(dplyr) 

df2 <- df %>% 
    mutate(time = strptime(Hour, format="%I:%M:%S %p") %>% format(., "%H")) 

ggplot(df2, aes(time, CrimeFreq, group=1)) + 
     geom_line() 

enter image description here

편집을보고 싶다.

df2 <- df %>% 
     mutate(time = as.POSIXct(strptime(Hour, format="%I:%M:%S %p", tz="Singapore"))) 

ggplot(df2, aes(time, CrimeFreq, group=1)) + geom_line() + 
    scale_x_datetime(date_breaks = "2 hour", 
        labels = function(x) format(x, format = "%I%p", tz="Singapore")) 

enter image description here

+0

감사합니다! 나는 X 축 눈금의 이름을 바꿀 수있는 방법을 찾았습니다. 그래서 tableau에있는 것과 같습니다. 감사합니다. – NVerde

+0

@NVerde는 위의 코드를 ggplot에서 좀 더 강력한 시간 코딩을 위해 편집했습니다. 시간대는 나쁜 일이 될 수 있습니다. –