我有這樣一個資料集:
structure(list(Subscales= c("self-regulation"。 "自我效能",
"個人成就感", "身材好"。 "受傷", "情緒衰竭", "情緒衰竭
"不安的休息", "睡眠質量"。 "General Well-Being", "Physical Recovery","社會恢復", "成功"。 "身體抱怨", "缺乏能量","疲勞", "沖突/壓力"。 "社會壓力", "情感壓力","一般壓力")。 MP1 = c(3. 51, 3. 34, 2.64, 3. 58, 1.84, 1.46,
1.26, 4.29, 3. 84, 3.44, 3.46, 2. 68, 1.69, 1.93, 1. 86, 1.78, 1.8,
1.68, 1。 69), MP2 = c(3. 47, 3. 26, 2.57, 3.4, 1. 89, 1.45, 1.26,
4.21, 3.87, 3. 47, 3.43, 2.54, 1. 8, 1.81, 1.99, 2. 03, 1.93, 1.8,
1. 73), MP3 = c(3. 5, 3.37, 2. 8, 3.37, 1.98, 1. 46, 1.31, 4.16,
4.03, 3.45, 3。 85, 2.79, 1.85, 1. 63, 2.14, 1.91, 1. 89, 1.7, 1.5
)。 Skalen =結構(c(15L。 14L, 11L。 1L, 9L, 4L。 3L, 16L。 8L,
13L, 17L, 19L。 12L, 10L。 6L, 2L, 18L。 5L, 7L), 。 標簽 = c("being in shape", 。
"沖突/壓力", "不安的休息"。 "Emotional Exhaustion", "Emotional Exhaustion",
"情感壓力", "疲勞"。 "一般壓力", "一般福祉","受傷", "缺乏能量"。 "個人成就", "身體抱怨","身體恢復", "自我效能感"。 "自我調節", "睡眠質量","社會恢復", "社會壓力"。 "成功")。 class = "factor"))。 行。 names = c(NA,
-19L)。 class = c("tbl_df"/span>。 "tbl", "data. frame"))
并且創建了這個情節:
ggplot(data=ebf。 aes(x=forcats: : fct_inorder(Subscales), y=MP1。 group="")
geom_line(aes(y = MP1。 linetype="MP1"/span>。 color = "MP1"))
geom_line(aes(y = MP2, linetype="MP2"/span>。 color = "MP2"))
geom_line(aes(y = MP3。 linetype="MP3"/span>。 color = "MP3"))
geom_point(aes(y = MP1。 形狀="MP1"/span>。 color = "MP1")) >
geom_point(aes(y = MP2。 形狀="MP2"/span>。 color = "MP2")) >
geom_point(aes(y = MP3, 形狀="MP3"/span>。 color = "MP3"))
coord_flip()
實驗室(x="RESTQ-Sport Subscales"/span>。 顏色 = "Legend: ", linetype = "Legend: ", shape = "Legend:")
scale_color_manual(values = colors) 。
scale_y_continuous(limits = c(0。 6)。 打破= c(0。 1。 2, 3, 4, 5, 6)。 標簽 = paste0(0。 6, "
", labels.minor), sec. axis = sec_axis(~. x, breaks = 0。 6))
主題(panel.grid.major.y = element_blank(),panel. grid.minor.x = element_blank(),axis.line。 x = element_line(size = 1。 顏色 = "black"。 linetype=1),軸。 title=element_blank(),legend。 position="bottom")。
為了更好地說明問題,我想調整圖形的線條和形狀。線條應該再粗一點,形狀應該再大一點。
所以我把我的代碼改成了這樣,就像我之前對以前的 ggplot 圖形所做的那樣:
ggplot(data=ebf。 aes(x=forcats: : fct_inorder(Subscales), y=MP1。 group="")
geom_line(aes(y = MP1。 linetype="MP1"/span>。 顏色 = "MP1"。 size = 1))
geom_line(aes(y = MP2, linetype="MP2"/span>。 顏色 = "MP2"。 size = 1))
geom_line(aes(y = MP3。 linetype="MP3"/span>。 顏色 = "MP3", size = 1))
geom_point(aes(y = MP1。 形狀="MP1"/span>。 顏色 = "MP1"。 size = 3))
geom_point(aes(y = MP2。 形狀="MP2"/span>。 顏色 = "MP2"。 size = 3))
geom_point(aes(y = MP3, 形狀="MP3"/span>。 顏色 = "MP3", size = 3))
coord_flip()
實驗室(x="RESTQ-Sport Subscales"/span>。 顏色 = "Legend: ", linetype = "Legend: ", shape = "Legend:")
scale_color_manual(values = colors) 。
scale_y_continuous(limits = c(0。 6)。 打破= c(0。 1。 2, 3, 4, 5, 6)。 標簽 = paste0(0。 6, "
", labels.minor), sec. axis = sec_axis(~. x, breaks = 0。 6))
主題(panel.grid.major.y = element_blank(),panel. grid.minor.x = element_blank(),axis.line。 x = element_line(size = 1。 顏色 = "black"。 linetype=1),軸。 title=element_blank(),legend。 position="bottom")。
但不管我如何定義線條和形狀的大小,結果總是形狀太大,或者線條太粗,像這樣:
我不知道如何調整,以獲得一個具有足夠線條和形狀的漂亮圖表。
預先感謝,我感謝任何形式的幫助。
歡呼吧uj5u.com熱心網友回復:
我在運行你的代碼時遇到了一些問題,所以我不得不修改下面這個代碼塊。但可能導致你的問題的是,你把size引數放在aes()里面。如果你把size拉出來,那么你就能夠調整線和點的大小。
ggplot(data=ebf, aes(x=forcats: : fct_inorder(Subscales), y=MP1。 group="")
geom_line(aes(y = MP1。 linetype="MP1"/span>。 顏色 = "MP1")。 尺寸= 1)
geom_line(aes(y = MP2。 linetype="MP2"/span>。 顏色 = "MP2")。 尺寸= 1)
geom_line(aes(y = MP3, linetype="MP3"/span>。 顏色= "MP3")。 size = 1)
geom_point(aes(y = MP1。 形狀="MP1"/span>。 顏色 = "MP1")。 尺寸= 3)
geom_point(aes(y = MP2。 形狀="MP2"/span>。 顏色 = "MP2")。 尺寸= 3)
geom_point(aes(y = MP3, 形狀="MP3"/span>。 顏色= "MP3")。 size = 3)
coord_flip()
實驗室(x="RESTQ-Sport Subscales"/span>。 顏色 = "Legend: ", linetype = "Legend: ", shape = "Legend:")
uj5u.com熱心網友回復:
正如Harrison Jones已經提到的,我們缺少labels.minor和color來完全復制你的情節。所以我也跳過了這幾行。他還正確地指出,在aes呼叫中出現的大小引數是你的問題。我還想指出,如果你的資料是整齊的資料格式(每一個觀察點有一行),你的繪圖會更容易和更短。這將避免對geom_line和geom_point的三次呼叫,你可以在ggplot呼叫中定義所有的美學,而不需要重復它們。
ebf %>%
pivot_longer(cols = MP1: MP3, names_to = "MP"。 values_to = "values") %> %
ggplot(aes(x=forcats:: fct_inorder(subscales)。 y = values, group = MP。 顏色= MP。 linetype = MP)
geom_line()
geom_point(size = 2)
coord_flip()
實驗室(x="RESTQ-Sport Subscales"/span>。 顏色 = "Legend: ", linetype = "Legend: ", shape = "Legend:")
主題(panel.grid.major.y = element_blank(),panel. grid.minor.x = element_blank(),axis.line。 x = element_line(size = 1。 顏色 = "black"。 linetype=1),軸。 title=element_blank(),legend。 position="bottom")。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/334036.html
標籤:
上一篇:如何消除sql計算中的冗余值?



