2017-02-24 4 views
-2

나는 범죄의 데이터 세트를 다루고 있으며 범죄의 최대 시간을 결정하려고합니다. 성공적으로 POSIXct 유형의 벡터를 만들었지 만 (예 : "2017-01-01 00:00:00 EST") hist.POSIXt를 사용하여 모든 날짜 만 매핑 할 수 있습니다.하루 중 POSIXct에서 시간을 표시

분명히하기 위해 x 축은 24 시간의 기간이 15 분간의 휴지통으로 나뉘는 히스토그램을 플로팅하고 싶습니다. 여기서 범죄가 발생한 날짜와 관계없이 모든 데이터를 플로트합니다 .

나는 여기에 데이터 집합을 사용하고 있습니다 : https://data.somervillema.gov/Public-Safety/Police-Selected-Criminal-Incidents/4jey-jqxb

내 코드를 벡터 생성 :

df<-read.csv("Police_-_Selected_Criminal_Incidents.csv", stringsAsFactors = FALSE) 

    date_reported<-as.POSIXct(strptime(df$dtreported,"%m/%d/%Y %r")) 

답변

1

뭔가 같은 :

library(RSocrata) 
library(hrbrthemes) # devtools::install_github("hrbrmstr/hrbrthemes") 
library(lubridate) 
library(tidyverse) 

events <- read.socrata("https://data.somervillema.gov/resource/6jia-qk6r.json") 

tbl_df(events) %>% 
    mutate(hour=hour(dtreported), min=minute(dtreported), tick=(hour*60)+min) %>% 
    ggplot(aes(tick)) + 
    geom_histogram(bins = 4*24, color="white", size=0.1) + 
    scale_x_continuous(expand=c(0,1), 
        breaks=seq(0, 1439, length.out = 5), 
        labels=c("Midnight", "06:00", "Noon", "18:00", "23:59")) + 
    scale_y_continuous(expand=c(0,0), limits=c(0, 250)) + 
    labs(x=NULL, y="# Events", 
     title="Police - Selected Criminal IncidentsPublic Safety", 
     subtitle="Robbery, burglary, theft of motor vehicle & theft from motor vehicle since 2005", 
     caption="Source: <https://data.somervillema.gov/Public-Safety/Police-Selected-Criminal-Incidents/4jey-jqxb>") + 
    theme_ipsum_rc(grid="Y") + 
    theme(axis.text.x=element_text(hjust=c(0, 0.5, 0.5, 0.5, 1))) 

enter image description here