[英]Overflowing X axis (ggplot2)
我有一個公司列表,其中包括三個變量:創立年份,市值和公司名稱(實際上,股票代碼)。
我想用年份(X軸)和市值(Y軸)繪制它們,填充由供應商名稱確定。
這樣做:
qplot(factor(Founded), Market.Cap, data = mcap, geom = "bar", fill = Vendor)
得到我,但X軸難以辨認(見下文)。 我試圖提供scale_x_discrete()值(1900 - 2012等),但沒有運氣。 我如何告訴ggplot2不顯示實際值,而是顯示我選擇的頻譜?
作為旁注,如果你能提醒我如何避免Y軸上的科學記數法,那就太棒了。
我希望這有幫助。 如果旋轉軸不起作用,則可以使用scale_x_continuous
的斷點和標簽手動設置軸的breaks
和labels
,如下所示:
require(ggplot2)
# dummy data
set.seed(45)
len <- 50
df <- data.frame(years = factor(seq(1901, 1950, length.out = len)),
values = 1e6 * runif(len), group=factor(rep(1:5, each=len/5)))
p <- ggplot(data = df, aes(x = years, fill=group)) + geom_bar(aes(weight = values))
require(scales) # for removing scientific notation
p <- p + scale_y_continuous(labels = comma)
# manually generate breaks/labels
labels <- seq(1901, 2000, length.out=10)
# and set breaks and labels
p <- p + scale_x_discrete(breaks=labels, labels=as.character(labels))
p
答案在這里找到
對於您的情況,我建議將x軸標簽旋轉90度:
+ theme(axis.text.x=element_text(angle=90, hjust=1))
並更改y軸表示法:
+ scale_y_continuous(labels=comma)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.