看板 R_Language 關於我們 聯絡資訊
[問題類型]: 程式諮詢(我想用R 做某件事情,但是我不知道要怎麼用R 寫出來) [軟體熟悉度]: 入門(寫過其他程式,只是對語法不熟悉) [問題敘述]: 我用ggplot2 畫長條圖,如果按照預設值可以順利畫出來,但是因為兩組資料數據相近 所以我想將Y軸尺度 從原先預設從0~600,改成400~600, 結果畫出來卻是空白畫布,資料不見 嘗試修改後仍是無果 只好請教各位高手幫忙 以下是我的程式碼 [程式範例]: data <- data.frame(yymm=c("202207","202307"),power = c(570.37,559.39)) ggplot( data, aes(x =factor(yymm) , y = power ,fill = yymm )) + geom_bar(position = "stack",stat="identity")+ scale_y_continuous(breaks = seq(400,600, 50),limits= c(400 ,600)) [環境敘述]: R 4.0.3 請提供 sessionInfo() 的輸出結果, 裡面含有所有你使用的作業系統、R 的版本和套件版本資訊, 讓版友更容易找出錯誤 [關鍵字]: 選擇性,也許未來有用 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 27.247.62.148 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/R_Language/M.1689303084.A.1F3.html
wayturn: https://ideone.com/cmKoRN 07/14 17:22
hohiyan: 因為你的資料有在 c(400, 600) 這個範圍之外的數值,所以 07/14 22:02
hohiyan: ggplot會把在這範圍之外的資料排除掉 07/14 22:03
hohiyan: 除了1F的解法外,也可以用coord_cartesian() 07/14 22:04
hohiyan: 用 coord_cartesian(ylim=c(400,600)) 取代 07/14 22:05
hohiyan: scale_y_continuous(...) 的部份 07/14 22:05