您好,登錄后才能下訂單哦!
這篇文章主要介紹“R語言可視化ggplot圖表系統中的形狀類別是什么”,在日常操作中,相信很多人在R語言可視化ggplot圖表系統中的形狀類別是什么問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”R語言可視化ggplot圖表系統中的形狀類別是什么”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!
今天跟大家分享ggplot圖表系統中形狀。
在ggplot函數系統中,形狀是一類重要的映射屬性,如同顏色一樣,它可以被賦予給變量,當然也可以直接指定實際的形狀類別。
library(ggplot2)
library(reshape2)
data<-data.frame(Name = c("蘋果","谷歌","臉書","亞馬遜","騰訊"),Company = c("Apple","Google","Facebook","Amozon","Tencent"),Sale2013 = c(5000,3500,2300,2100,3100),Sale2014 = c(5050,3800,2900,2500,3300),Sale2015 = c(5050,4000,3200,2800,3700),Sale2016 = c(6000,4800,4500,3500,4300))
mydata<-melt(data,id.vars=c("Name","Company"),variable.name="Year",value.name="Sale")
ggplot(newdata,aes(Company,Sale,group=Year,colour=Year))+geom_line()+geom_point()
以上函數通過一個簡單的折線圖+散點圖的形式展現了默認狀態下輸出的散點形狀。
ggplot函數的圖層理念中,修改局部圖層的元素,需要在局部圖層內進行設定,這里需要在geom_point()函數內部進行形狀設定。
R繪圖系統中存儲著的形狀符號多達25種:
我們嘗試著選擇幾種形狀進行展示:
ggplot(mydata,aes(Company,Sale,group=Year,colour=Year))+geom_line()+geom_point(shape=0,size=3)
ggplot(mydata,aes(Company,Sale,group=Year,colour=Year))+geom_line()+geom_point(shape=10,size=3)
ggplot(mydata,aes(Company,Sale,group=Year,colour=Year))+geom_line()+geom_point(shape=8,size=3)
ggplot(mydata,aes(Company,Sale,group=Year,colour=Year))+geom_line()+geom_point(shape=24,size=3)
ggplot(mydata,aes(Company,Sale,group=Year,colour=Year))+geom_line()+geom_point(shape=23,size=3)
你也可以通過將形狀映射指定給一個分類變量,這樣不同的形狀將會作為分類標識:
ggplot(mydata,aes(Company,Sale,group=Year,colour=Year))+geom_line()+geom_point(aes(shape=Year),size=3)
默認情況下,散點圖只有colour屬性,沒有fill屬性,但是當散點圖被賦予形狀映射之后,他就會擴展fill屬性。
ggplot(mydata,aes(Company,Sale,group=Year))+geom_line()+geom_point(shape=22,size=3,colour="black",fill="red")
至于形狀的大小,你可以根據自己的需要和喜好自由調整,就像調整線條的size一樣。
ggplot(mydata,aes(Company,Sale,group=Year))+geom_line()+geom_point(shape=22,size=5,colour="black",fill="red")
因為形狀屬于分類性質的映射屬性,所以形狀不可以被指定給連續性變量:
ggplot(mydata,aes(Company,Sale,group=Year))+geom_line()+geom_point(aes(shape=Sale),size=5,colour="black",fill="red")
軟件提示:
Error: A continuous variable can not be mapped to shape
但是形狀的大小是可以被映射給連續性變量的:
ggplot(mydata,aes(Company,Sale,group=Year))+geom_line()+geom_point(aes(size=Year),shape=22,colour="black",fill="red")
當將形狀大小(size)指定給離散變量時,雖然可以出來圖表,但是軟件提示不建議將形狀大小映射給離散變量。
ggplot(mydata,aes(Company,Sale,group=Year))+geom_line()+geom_point(aes(size=Year,colour="grey"),shape=22,fill="red")
Warning message:
Using size for a discrete variable is not advised.
基于以上敘述,這里我想總結兩點:
一、關于屬性映射的問題(形狀、大小、顏色、線條)
形狀屬性只能通過連續型變量進行映射;
大小屬性同時可以指定給連續性變量、離散型變量(軟件并不建議)。
顏色變量是所有屬性中為數不多的既可以使用離散型變量、又可以使用連續性變量進行映射的屬性
二、關于制定屬性映射時shape、size、colour(fill)的位置問題。
如果屬性是指定給數據集中的變量(無論是連續性還是離散型)的話,那么一定要包含在美學屬性之內(aes()):因為只有包含在aes()中,軟件才能通過在數據集中調用對應變量進行映射。
當要將屬性映射指定給具體的屬性類別時(比如具體的顏色名稱、色值以及形狀大小、代號和類別),那么要將其放在對應圖層(geom_xxx())內,美學屬性【aes()】系統外。
作用于單個圖層的映射屬性要放在對應圖層中,(比如作用于線條的屬性要放在geom_line()內,作用于形狀的屬性要放在geom_point()內),作用于全局的屬性要放在全局系統函數層內【ggplot()】。(比如本例中同時作用于折線圖和散點圖的數據集、x軸y軸變量以及分組變量等)
到此,關于“R語言可視化ggplot圖表系統中的形狀類別是什么”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。