R語言繪製動態圖

2021-01-18 珞珈R

直接上代碼

方法一:

library(magick)library(ggplot2)library(gganimate)library(ggthemes)


library(gapminder)View(gapminder)table(gapminder$year)


for (i in 1:length(unique(gapminder$year))) {    ggplot(data = gapminder[gapminder$year == as.numeric(names(table(gapminder$year))[i]),],         aes(x = gdpPercap,             y = lifeExp,             size = pop,             color = continent)) +    geom_point(alpha = 0.5) +    scale_x_log10() +     theme_bw() +     labs(title = paste("Year",names(table(gapminder$year))[i], sep = " "),         x = "GDP per capita",         y = "life expectancy") +    guides(size = guide_legend(order = 1),           color = guide_legend(order = 2)) +     theme(legend.key.size = unit(0.25, "cm"),          legend.key.width = unit(0.15,"cm")) +   ggsave(filename = paste0(names(table(gapminder$year))[i],".png"),         width = 10,         height = 6,         units = "cm")}
animate_p <- image_animate(image = image_read(path = paste0(names(table(gapminder$year)), ".png")))anim_save(filename = "anim.gif", animation = animate_p, path = "./")


總結一下:這張圖其實應該在上面的循環中應該繪製一樣的大小,然後在合併圖片的時候才能展示出比較好的結果。



方法二:

ggplot(gapminder, aes(gdpPercap, lifeExp, size = pop, color = continent)) +  geom_point() +  scale_x_log10() +  theme_bw() +    labs(title = 'Year: {frame_time}',        x = 'GDP per capita',        y = 'life expectancy') +  transition_time(year) +  ease_aes('linear')
anim_save("gganimate1.gif")


總結一下:gganimate包的使用參數還是很多的,以後還需要慢慢學習。
可以發現這個包可以完全的把每一年的數據很好的整合到一起去。


對上面的結果進行分面

facet_wrap

ggplot(gapminder, aes(gdpPercap, lifeExp, size = pop, fill = country)) +  geom_point(shape = 21,alpha = 0.7, show.legend = F) +  scale_colour_manual(values = country_colors) +  scale_size(range = c(2, 20)) +  scale_x_log10() +  facet_wrap(~continent,nrow = 1,scales = "free_y") +    labs(title = 'Year: {frame_time}', x = 'GDP per capita', y = 'life expectancy') +  transition_time(year) +  ease_aes('linear')anim_save("gganimate2.gif")



R繪圖動態圖的包的參數還有很多,仍需要繼續學習!

相關焦點

  • R語言 | R語言繪製抖動散點圖和蜂群圖
    語言自帶的一個小數據集,展示使用ggplot2包繪製兩種特殊的散點統計圖,抖動散點圖(jitter plot)和蜂群圖((beeswarm plot)。這兩種類型的散點圖在文獻中都很常見,例如生物學研究中常使用它們展示基因定量表達的信息。除了R語言作圖外,本文還比較了二者各自的特點,並在最後簡單列舉了它們與其它類型的統計圖如箱線圖、提琴圖等的區別和聯繫,以及適用場合。 multcomp包的cholesterol數據集,來自某項臨床研究,記錄了50個患者接受降膽固醇藥物治療後的療效。
  • 使用R語言繪製直方圖
    在本號前面的文章中介紹了R語言中繪製散點圖,折線圖,條形圖,餅圖和箱線圖的方法,有興趣的讀者關注本號後,可以往前看本號的所有文章,本文將介紹在R中繪製直方圖的方法。直方圖概述直方圖(Histogram)又稱柱狀圖,是由一系列高度不等的縱條紋或線段表示的數據分布情況。
  • R語言中使用stem函數繪製莖葉圖
    R語言中提供了很多實用的函數幫助我們處理統計量。前面的文章中介紹了均值、方差、全距、幾何平均數等的計算方法,還給出了繪製條形圖,直方圖,散點圖,餅圖,箱線圖等的繪製方法,本文將介紹統計學中的另外一種圖的繪製方法:莖葉圖。歡迎感興趣的讀者關注本號,本號會詳細介紹R在各個方面的使用方法。
  • R語言 | 繪製環圖示例
    圓環圖嘛,當然就是圓環狀的統計圖啦。它主要由柱形圖或餅圖轉化而來,將原本一個個豎直的柱子彎曲成圓環展示,或者將餅圖轉換為空心狀圓環。本篇白魚小編將使用R語言ggplot2包,通過幾個示例分享這類圓環圖的繪製方法。
  • R語言中使用par函數在同一繪圖區中繪製多幅圖
    par函數概述在R繪圖時,有時我們想在一個繪圖區中同時繪製多幅圖。在R語言中可以有多個函數來實現此要求。這裡先介紹一下繪圖參數par函數的使用。R中的par()函數可以將繪圖區分割成規則的幾個部分。多圖環境用參數mfrow或參數mfcol來設定,如:par(mforw=c(3,2))則是在同一繪圖區中繪製3行2列共6個圖形,而且是先按行繪製,即繪製完第1行的2個圖形後,再繪製第2行的2個圖形,最後是第3行的2個圖形。同理,par(mfcol=c(3,2))也是繪製3行2列共6個圖形,與上面不同的是,先按列繪製。
  • R語言中使用lines函數繪製折線圖
    lines函數概述R語言中,abline函數每次僅能繪製一條直線,如果給出若干點,依次用線段連接起來的話,這可以藉助lines函數。R語言中lines函數的使用格式如下:lines(x, y = NULL,...)
  • R語言從入門到精通:Day8-圖形繪製
    在上一次教程中,我們講解了R語言繪圖的諸多函數,想必看到自己做出的圖形,肯定小有成就感吧。  基本圖形的繪製  在上面的幾個例子中,我們已經接觸到了散點圖、條形圖、箱線圖的繪製,本次推文的剩餘內容就是介紹這些基本圖形的繪製。  基本圖形主要包括了點圖、條形圖、箱線圖、餅圖、扇形圖和核密度圖等,這些圖形的目的主要有兩點:將數據的分布可視化展示、對數據進行跨組比較。下面就從條形圖開始介紹基本圖形的繪製。
  • R語言繪圖 | R繪製火山圖 EnhancedVolcano+ggplot
    火山圖其實是一種很形象的叫法,它可以通過關注對象的落點從而直觀地展示該對象的所屬區域。其通常用於展示差異結果,比如RNA-seq差異基因展示。讀懂了「火山」火星噴射的落點橫縱坐標意義,就讀懂了火山圖:R繪製火山圖下面就進入主題,用R繪製火山圖,我們的教程小白也能看懂哦😊!R包:Enhanced Volcano Plot的實例操作解說 EnhancedVolcano by Kevin Blighe1. 安裝if (!
  • R語言 | 小提琴圖
    比如,我們以R語言中的內置數據集iris為例,比較幾種不同花的花萼長度(Sepal.Length),通常會使用下圖。箱式圖能夠提供中位數、四分位數等的信息,但是不能直觀的表現出具體數據分布情況。而小提琴圖則能夠彌補這一點,而且小提琴圖比箱式圖要美觀不少。雖然目前小提琴圖不如箱式圖使用普遍,但是越來越多的文章中出現小提琴圖。使用小提琴圖會使文章增色不少。
  • R語言中繪製常用函數曲線的方法詳解
    在本號前面的文章中介紹了使用plot函數繪製圖形的方法。本文將使用另外一種方法來繪製常見函數的曲線的方法,如冪函數曲線、指數函數曲線、三角函數曲線等。所用函數簡介本文要使用到的R函數是curve函數。+1,-10,5,col="blue",add=T)text(8,25.5,expression(paste("y = ",x^2," + 3x + 1")),col="blue")abline(v= -b/(2*a),col="lightblue",lty=2)本段代碼在同一幅圖中繪製了兩個函數圖像
  • 如何用R繪製精美的散點圖
    R可以繪製出很棒的統計圖形,之前我們介紹了用R繪製柱狀圖。今天,小編帶著小夥伴們一起來了解下散點圖的繪製。小編自己看代碼的時候也覺得枯燥乏味,看圖片比看代碼輕鬆多了。所以我們先上圖。上圖就是通過R繪製出的散點圖,看起來也很漂亮。那麼,這種散點圖是如何繪製的呢?感興趣的小夥伴就請繼續看下面的代碼。
  • R語言中使用pie函數繪製餅圖
    R語言中餅圖繪製函數在R語言中繪製餅圖的函數為pie,其使用格式如下:pie(x, labels = names(x), edges = 200, radius = 0.8,clockwise = FALSE, init.angle = if(clockwise) 90 else 0,density = NULL, angle = 45, col = NULL
  • r語言tseries - CSDN
    plot(x, plot.type=」single」) #支持多個時間序列數據在一個圖中展示,僅對xts不行五、【基本統計運算】1、自相關係數、偏自相關係數等例題2.1d=scan(「sha.csv」)sha=ts(d,start=1964,freq=1)plot.ts(sha) #繪製時序圖
  • 用R繪製最完整中國地圖
    我們前邊用三篇推文介紹了用R對世界地圖搭配數據的繪製,分別是:用ggplot2包繪製主要地區和城市的疫情格局:用tmap包繪製國家/地區水平的整體情況:如何用R繪製新冠病毒世界格局(二)(附完整代碼)。
  • R語言arma模型診斷_arma模型實現模型r語言 - CSDN
    sha=ts(d,start=1964,freq=1)plot.ts(sha)   #繪製時序圖acf(sha,22)   #繪製自相關圖,滯後期數22pacf(sha,22)  #繪製偏自相關圖,滯後期數22corr=acf(sha,22)   #保存相關係數
  • r語言work_r語言work函數 - CSDN
    R的源起R是S語言的一種實現。S語言是由 AT&T貝爾實驗室開發的一種用來進行數據探索、統計分析、作圖的解釋型語言。最初S語言的實現版本主要是S-PLUS。S-PLUS是一個商業 軟體,它基於S語言,並由MathSoft公司的統計科學部進一步完善。
  • 利用R語言進行層次聚類分析以及繪製樹狀圖
    樹形圖(dendrogram)是表示樹的圖。
  • Python學習筆記:繪製極坐標圖和散點圖的繪製與保存
    1.簡單極坐標圖#導入繪製極圖所需要的包import matplotlib.pyplot as pltimport numpy as np#設置下面所需要的參數barSlices = 12#theta指每個標記所在射線與極徑的夾角,下面表示均分角度theta = np.linspace(0.0
  • r語言 做wald檢驗_r語言wald檢驗怎麼做 - CSDN
    用R語言遇到的一些問題。經常看到rcs()函數,比如擬合回歸時:f <- cph(S ~ rcs(age,4) + sex, x=T, y=T)。
  • 柱狀圖繪製,在R中兩行代碼就可以實現
    R可以說是繪製圖形的利器了,簡單幾行代碼,就可以繪製出各種精美的圖形。當然,對於從事科研的小夥伴來說,把辛苦做出來的實驗數據繪製成各種高大上的統計圖形才是至關重要的。今天,小編給大家展示一下用R繪製柱狀圖是多麼簡單!