最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

R語言動態(tài)可視化:制作歷史全球平均溫度的累積動態(tài)折線圖動畫gif視頻圖|附代碼數(shù)據(jù)

2023-06-28 22:53 作者:拓端tecdat  | 我要投稿

全文鏈接:http://tecdat.cn/?p=9766

原文出處:拓端數(shù)據(jù)部落公眾號

最近我們被客戶要求撰寫關(guān)于動態(tài)可視化的研究報告,包括一些圖形和統(tǒng)計輸出。

?在某些情況下,你可能希望通過在每幀中添加數(shù)據(jù)并保留先前添加的數(shù)據(jù)來進(jìn)行動畫處理。

現(xiàn)在,我們將通過制作點線圖的動畫來探索。

以下是制作圖表靜態(tài)版本的代碼:

#讀取數(shù)據(jù)warming <- read_csv("warming.csv")#繪圖warming_plot <- ggplot(warming, aes(x = year, y = value)) + ?geom_line(colour="black") + ?geom_point(shape = 21, colour = "black", aes(fill = value), size=5, stroke=1) + ?scale_x_continuous(limits = c(1880,2017)) + ?scale_y_continuous(limits = c(-0.5,1)) + ?scale_fill_distiller(palette = "RdYlBu", limits = c(-1,1), guide = FALSE) + ?xlab("") + ?ylab("Difference from 1900-2000 (oC)") + ?theme_minimal(base_size = 16, base_family = "Georgia")

結(jié)果應(yīng)該是:

該文件warming.csv包含字段yearvalue,后者是全球年平均氣溫,相比于1900-2000的平均水平。

因為這是一個點-線圖,它包括geom_linegeom_point層。我們可以將輪廓設(shè)置color為黑色,然后aes根據(jù)溫度使用映射將其填充為顏色value。

該代碼用于scale_fill_distiller使用ColorBrewer調(diào)色板,該調(diào)色板從冷藍(lán)色,中性黃色到暖紅色,并將它們應(yīng)用于從-1到+1的一系列值。

同樣,我們可以設(shè)置數(shù)據(jù)動畫:

代碼的工作方式

  • transition_reveal。當(dāng)along時間變量的每個值添加到圖表中時,這將保留先前顯示的數(shù)據(jù)。id通過使其等于所討論的類別變量,可用于為多個類別創(chuàng)建單獨的行;否則使用id = 1。

transition_reveal其默認(rèn)是顯示線條,僅繪制當(dāng)前幀的點:

要創(chuàng)建點的累積動畫,使用如下代碼:

  • shadow_mark?保留先前幀中的數(shù)據(jù)。

使用for循環(huán)繪制并保存每年的圖表

要制作點和線的累積動畫,我們需要編寫一個循環(huán)為每幀創(chuàng)建一個單獨的圖像。

for循環(huán):

# 列出1880年至2017年的年份years <- c(1880:2017)# for循環(huán)每年輸出到控制臺,每次暫停一秒鐘for (y in years) { ?print(y) ?Sys.sleep(1) }

輸出:

[1] 1880[1] 1881[1] 1882[1] 1883[1] 1884[1] 1885[1] 1886[1] 1887

代碼的第一行創(chuàng)建一個整數(shù)列表,其范圍為1880年至2017年。

這部分代碼將遍歷列表中的每個條目:for (y in years)

該代碼使用相同的原理來繪制并保存每年的圖表:

該代碼如何工作

對于每一年,y該代碼首先都會使一個稱為R的R對象。

然后,它創(chuàng)建一個名為的R對象chart,這是從該數(shù)據(jù)繪制的靜態(tài)ggplot2圖。

然后,使用該ggsave函數(shù)以定義的尺寸和分辨率保存該圖表,從而在循環(huán)上進(jìn)行進(jìn)度更新。

ggsave代碼利用了R函數(shù)paste0

將幀合并為GIF和視頻

首先使用制作GIF:

# 用ImageMagick制作GIFsystem("convert -delay 10 charts/*.jpg warming2.gif")# 增加GIF最后一幀的延遲system("convert warming2.gif \( +clone -set delay 300 \) +swap +delete warming2_with_pause.gif")

這段代碼創(chuàng)建了一個名為的GIF?warming2.gif?,F(xiàn)在制作視頻:

# 用FFmpeg制作視頻system("ffmpeg -f image2 -start_number 1880 -i charts/%d.jpg -vf 'scale=trunc(iw/2)*2:trunc(ih/2)*2' warming.mp4")# 改變視頻的速度system("ffmpeg -i warming.mp4 -vf 'setpts=2*PTS' warming_slow.mp4")

image2根據(jù)圖像序列創(chuàng)建視頻。

制作動畫,在模擬人類對全球平均氣溫的影響與自然影響之間進(jìn)行切換

循環(huán)動畫還可以用于在不同狀態(tài)或數(shù)據(jù)的篩選視圖之間切換。為了說明這一點,我們將加載NASA數(shù)據(jù),該數(shù)據(jù)顯示來自氣候模型的模擬,該模擬比較了自然事件(例如,來自太陽的輻射變化和來自火山噴發(fā)的煙塵的冷卻效應(yīng))在自然事件的影響下的全球平均溫度將如何變化。對人類的影響,主要是二氧化碳和其他溫室氣體的排放。

代碼的工作方式

  • transition_state。這會在數(shù)據(jù)的不同過濾狀態(tài)之間切換,此處由變量定義type。

  • ease_aes使用狀態(tài)過渡動畫時,使用可改變過渡速度的選項

  • "{closest_state}"ggtitle函數(shù)中使用會在此處顯示用于定義狀態(tài)的變量的適當(dāng)值type

GIF應(yīng)該如下所示:

最受歡迎的見解

1.R語言動態(tài)圖可視化:如何、創(chuàng)建具有精美動畫的圖

2.R語言生存分析可視化分析

3.Python數(shù)據(jù)可視化-seaborn Iris鳶尾花數(shù)據(jù)

4.r語言對布豐投針(蒲豐投針)實驗進(jìn)行模擬和動態(tài)

5.R語言生存分析數(shù)據(jù)分析可視化案例

6.r語言數(shù)據(jù)可視化分析案例:探索brfss數(shù)據(jù)數(shù)據(jù)分析

7.R語言動態(tài)可視化:制作歷史全球平均溫度的累積動態(tài)折線圖動畫gif視頻圖

8.R語言高維數(shù)據(jù)的主成分pca、 t-SNE算法降維與可視化分析案例報告

9.python主題LDA建模和t-SNE可視化


R語言動態(tài)可視化:制作歷史全球平均溫度的累積動態(tài)折線圖動畫gif視頻圖|附代碼數(shù)據(jù)的評論 (共 條)

分享到微博請遵守國家法律
光泽县| 新乡县| 庆城县| 玉树县| 汉沽区| 白玉县| 洪泽县| 丹寨县| 怀安县| 若羌县| 金秀| 呼和浩特市| 杭锦旗| 新邵县| 郁南县| 若羌县| 宿松县| 泉州市| 清流县| 手机| 凭祥市| 江陵县| 武宣县| 朝阳县| 双城市| 句容市| 常山县| 原平市| 微山县| 虹口区| 柳河县| 甘谷县| 班玛县| 卫辉市| 西畴县| 普安县| 芒康县| 陵川县| 二连浩特市| 晋江市| 全南县|