ggplot2
을 사용하여 시계열 데이터를 플로팅 할 수 있습니다. 그러나 계절별 정보와 함께 시계열 데이터를 강조하고 싶습니다. 내가 시계열 데이터를 그릴 수 있어요시계열 데이터의 여러 x 축 레이블
library(zoo)
library(ggplot2)
a <- read.table(text = "
Season Quarter Sales
Season1 2014Q1 20
Season1 2014Q2 40
Season1 2014Q3 60
Season1 2014Q4 80
Season2 2015Q1 30
Season2 2015Q2 40
Season2 2015Q3 80
Season3 2015Q4 90
Season3 2016Q1 100
Season3 2016Q2 120
Season3 2016Q3 140
", header = TRUE, sep = "")
a$Quarter<-as.yearqtr(a$Quarter)
a$Quarter<-as.Date(a$Quarter)
ggplot(data=a,aes(x=Quarter, y=Sales)) +
geom_line()
이 점에서 잘 작동 :
지금, 나는 시즌 1을, color
또는 linetype
을 사용하는 것이 작업을 수행하는 2 등 한 가지 방법을 구성하는 것에 레이블을합니다. 그러나 이것은 시계열의 연속성을 깨기 때문에 효과가없는 것처럼 보입니다. 한편
# doesn't work...
ggplot(data=a,aes(x=Quarter, y=Sales)) +
geom_line(aes(linetype=Season))
는, 내가 좋아하는 방법 Excel에서 플롯
두 번의 클릭이 그래프. 날짜와 함께 x 축에 계절 정보를 보여주는 아름다운 그래프를 만듭니다. 기본적으로 3 층 x 축을 만듭니다.
질문 1 : 나는이 주제에 대한 두 가지 질문이
내가 ggplot
에서 linetype
(또는 color
)이 연속 그래프를 만드는 데 사용할 수있는 방법이 ggplot
사용을, (즉, 휴식없이)? linetype
(color
)을 선호합니다. 예를 들어 설명에 답하기 위해 다음은 다른 데이터 집합을 사용하여 만든 그래프입니다.
df <- data.frame(x = 1:3, y = 1:3, z = c(1,3,5))
ggplot(df, aes(x, y, color = factor(z))) +
geom_line(aes(group = 1))
나는 시계열 데이터에 대한 위의 동작을 복제 할 수 없습니다.
질문 2 : ggplot
를 사용, 나는 (Excel이 나에게했던 것과 유사) 멀티 레벨 x 축을 만드는 방법을 계절을 보여줍니다 여기에 내가 코드 위에서 얻은 그래프이다 날짜 정보? {내가 만든 Excel 그래프를보십시오.}이 옵션을 사용하여 범례를 만들고 싶지 않습니다. 또한 x3 값과 y 값을 조정하고 다시 조정하여 다중 레벨 레이블을 넣는 해킹 방법을 annotate
(또는 가능하게는 geom_text
) 방법으로 적용하여 해킹 방법을 사용하지 않으면 감사 하겠음을 분명히 밝힙니다. 이는 프로그래밍 언어를 사용하여 그래프를 그리는 목적을 상쇄하고 데이터가 변경되면 작동하지 않기 때문입니다.
질문 사항이 있으면 알려 주시기 바랍니다. 나는 네 생각을 고맙게 생각한다. 저는 ggplot2
으로 절대적인 초보자입니다. Excel 및 STATA에서 ggplot
으로 전환 한 지 불과 5 일 밖에되지 않았습니다. 그래서 내 질문이 너무 근본적이라면 사과드립니다.
나는이 주제를 SO에서 연구 했으므로 충분히 근접 할 수는 없다. 예를 들어 this thread은 틱을 변경하는 것에 대해 이야기하지만 내가 찾고있는 것은 아닙니다.
의도가 분명하지만, 당신의'linetype' 예를 들어, 특히,'ggplot2'가 옳은 일을하고있다 - 예를 들어, 어떤'linetype' 당신에게 것 시즌 1과 2를 연결하는 세그먼트가있을 것으로 기대하십니까? – tchakravarty
@ tchakravarty 귀하의 의견에 감사드립니다. 이제는 색상을 사용하여 연속성을 보여줄 수 있다면 도움이 될 것이라고 생각합니다. 나는 위의 설명을 추가 할 것이다. – watchtower
동일한 논리가 색상에도 적용됩니다. 최선의 방법은 Excel이 당신을 위해 만드는 계층 적 축을 시도하고 복제하는 것입니다. 여기에 몇 가지 이전 솔루션이 있습니다 [여기] (http://stackoverflow.com/q/18165863/1414455) 및 [여기] (http://stackoverflow.com/q/5704725/1414455). – tchakravarty