R語言繪制餅狀圖代碼實例
R編程語言有許多庫來創建圖表和圖表。 餅圖是將值表示為具有不同顏色的圓的切片。 切片被標記,並且對應於每個片的數字也在圖表中表示。
在R語言中,餅圖是使用pie()函數創建的,它使用正數作為向量輸入。 附加參數用於控制標簽,顏色,標題等。
語法
使用R語言創建餅圖的基本語法是
pie(x, labels, radius, main, col, clockwise)
以下是所使用的參數的描述
- x是包含餅圖中使用的數值的向量。
- labels用於給出切片的描述。
- radius表示餅圖圓的半徑(值-1和+1之間)。
- main表示圖表的標題。
- col表示調色板。
- clockwise是指示片段是順時針還是逆時針繪制的邏輯值。
例
使用輸入向量和標簽創建一個非常簡單的餅圖。 以下腳本將創建並保存當前R語言工作目錄中的餅圖。
# Create data for the graph. x <- c(21, 62, 10, 53) labels <- c("London", "New York", "Singapore", "Mumbai") # Give the chart file a name. png(file = "city.jpg") # Plot the chart. pie(x,labels) # Save the file. dev.off()
當我們執行上面的代碼,它產生以下結果 –
餅圖標題和顏色
我們可以通過向函數中添加更多參數來擴展圖表的功能。 我們將使用參數main向圖表添加標題,另一個參數是col,它將在繪制圖表時使用彩虹色板。 托盤的長度應與圖表中的值的數量相同。 因此,我們使用length(x)。
例
以下腳本將創建並保存當前R語言工作目錄中的餅圖。
# Create data for the graph. x <- c(21, 62, 10, 53) labels <- c("London", "New York", "Singapore", "Mumbai") # Give the chart file a name. png(file = "city_title_colours.jpg") # Plot the chart with title and rainbow color pallet. pie(x, labels, main = "City pie chart", col = rainbow(length(x))) # Save the file. dev.off()
當我們執行上面的代碼,它產生以下結果 –
切片百分比和圖表圖例
我們可以通過創建其他圖表變量來添加切片百分比和圖表圖例。
# Create data for the graph. x <- c(21, 62, 10,53) labels <- c("London","New York","Singapore","Mumbai") piepercent<- round(100*x/sum(x), 1) # Give the chart file a name. png(file = "city_percentage_legends.jpg") # Plot the chart. pie(x, labels = piepercent, main = "City pie chart",col = rainbow(length(x))) legend("topright", c("London","New York","Singapore","Mumbai"), cex = 0.8, fill = rainbow(length(x))) # Save the file. dev.off()
當我們執行上面的代碼,它產生以下結果 –
3D餅圖
可以使用其他軟件包繪制具有3個維度的餅圖。 軟件包plotrix有一個名為pie3D()的函數,用於此。
# Get the library. library(plotrix) # Create data for the graph. x <- c(21, 62, 10,53) lbl <- c("London","New York","Singapore","Mumbai") # Give the chart file a name. png(file = "3d_pie_chart.jpg") # Plot the chart. pie3D(x,labels = lbl,explode = 0.1, main = "Pie Chart of Countries ") # Save the file. dev.off()
當我們執行上面的代碼,它產生以下結果 –
到此這篇關於R語言繪制餅狀圖代碼實例的文章就介紹到這瞭,更多相關R語言餅狀圖內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!