1.plotly包

动态散点图

library(plotly)

# 交互散点图
plot_ly(data=iris,
x=~Sepal.Length,
y=~Petal.Length,
marker=list(size=10,
color='rgba(255,182,193,.9)',
line=list(color='rgba(152,0,0,.8)',
width=2))) %>%
layout(title='Styled Scatter',
yaxis=list(zeroline=FALSE),
xaxis=list(zeroline=FALSE)) #多维数据,添加标签
plot_ly(mpg,x=~hwy,y=~displ,color=~factor(cyl),
text=~paste('Model:',model)) %>%
layout(title='MPG data',font=list(family='Times New Roman',
size=13,color='forestgreen')) #参数
plot_ly(data=iris,x=~Sepal.Length,y=~Petal.Length,
type = 'scatter',#lines/markers/text/none
mode='makers',
symbol = ~Species,
#点类型
symbols = c('circle','x','o'),color = I('black'),
marker=list(size=10))
#点连线形式
trace0 <- rnorm(100,mean=5)
trace1 <- rnorm(100,mean=0)
trace2 <- rnorm(100,mean=-5)
x <- c(1:100)
data <- data.frame(x,trace0,trace1,trace2) #第一张散点图以线图形式展示
plot_ly(data,x=~x,y=~trace0,
name = 'trace 0',type = 'scatter',
mode='lines') %>%
#第二张以点连线形式展示
add_trace(y=~trace1,name='trace 1',
mode='lines+markers') %>%
#第三张普通散点图
add_trace(y=~trace2,name='trace 2',
mode='markers') %>%
layout(xaxis=list(zeroline=FALSE)) #add_trace/add_histogram/add_boxplot/add_text

其他动态图

#动态气泡图
# 动态线图
# 动态条形图
# 动态直方图
# 动态盒形图
# 动态误差条图
# 动态饼图和戒指图

2. recharts包

接近基础绘图语法。

散点图

#devtools::install_github('taiyun/recharts')
library(recharts) #散点图
ePoints(iris[,3:5],series = ~Species) ePoints(iris[,3:5],
xvar=~Petal.Length,
yvar=~Petal.Width,
series = ~Species,
xlab.name = 'Petal Length',
ylab.name = 'Petal Width',
xlab.namePosition = 'end',
ylab.namePosition = 'end',
title = 'IRIS data',
title.x = 'center',
title.y = 'top',
legend.orient = 'vertical',
legend.x = 'right',
legend.y = 'center')

其他动态图

#线图
names(mtcars)
eLine(mtcars,xvar = ~cyl,yvar = ~mpg,series = ~gear) #条形图
eBar(mtcars,xvar = ~cyl,yvar = ~mpg,series = ~gear) #饼图
x=runif(6)
names(x)=LETTERS[1:6]
ePie(x,type='pie',title = 'PIE')
#玫瑰图
ePie(x,type = 'rose',roseType = 'radias',title = 'Rose plot') #雷达图
eRadar(mtcars,xvar = ~cyl,yvar = ~mpg,series = ~gear) #漏斗图、面积图等。。。

3. rChart包

语法近似于lattice绘图系统。在R中实现Polychart、Morris、NVD3等多个js绘图库。

https://github.com/ramnathv/rCharts

没安装上

Ploychart

4.threejs包

3D显示功能。

#install.packages('threejs')
library(threejs) #三维散点图
N <- 100
i <- sample(3,N,replace = TRUE)
x <- matrix(rnorm(N*3),ncol=3)
lab <- c('small','bigger','biggest')
scatterplot3js(x,color = rainbow(N),labels=lab[i],
size=i,renderer = "canvas") #三维地图
library(maps)
data("world.cities",package = 'maps')
cities <- world.cities[order(world.cities$pop,decreasing = TRUE)[1:1000],]
value <- 100*cities$pop/max(cities$pop)
col <- colorRampPalette(c('cyan','lightgreen'))(10)[floor(10*value/100)+1]
threejs::globejs(lat = cities$lat,
long=cities$long,
value=value,
color = col,
atmosphere = TRUE)

5.timevis包

#绘制动态时间轴,展示时间节点事件
library(timevis)
timevis(data.frame(id=1:3,
content=c('one','two','three'),
start=c('2016-01-10','2016-01-14','2016-01-19'),
end=c(NA,'2016-01-18',NA),
type=c('point','background','box')))

6.dygraphs包

#动态时间序列
library(dygraphs)
lungDeaths <- cbind(mdeaths,fdeaths)
dygraph(lungDeaths)
#选择特定时间
dygraph(lungDeaths) %>%
dyRangeSelector(dateWindow = c('1975-06-01','1978-12-31'))

7.leaflet包

js开源交互式地图包,在R中利用哦html5显示。

#install.packages('leaflet')
library(leaflet) f <- leaflet() #初始化
y <- addTiles(f) #调用地图底图
addMarkers(y,
lng = 121.445,
lat=31.1980,
popup = '复旦大学上海医学院') #添加标记 #用管道符
leaflet() %>% addTiles() %>%
addMarkers(lng = 121.445,lat = 31.1980,popup = '复旦大学医学院')

功能强大,不再演示。

R语言与医学统计图形-【31】动态交互绘图的更多相关文章

  1. R语言与医学统计图形【1】par函数

    张铁军,陈兴栋等 著 R语言基础绘图系统 基础绘图包之高级绘图函数--par函数 基础绘图包并非指单独某个包,而是由几个R包联合起来的一个联盟,比如graphics.grDevices等. 掌握par ...

  2. R语言与医学统计图形【6】低级绘图函数

    R语言基础绘图系统 基础绘图包之低级绘图函数--定义坐标轴.图例.文本 低级绘图函数:本身不具备图形绘制能力,只是在已有图形基础上添加元素. 函数 功能 arrows 添加箭头 axis 坐标轴 bo ...

  3. R语言与医学统计图形【5】饼图、条件图

    R语言基础绘图系统 基础图形--饼图.克利夫兰点图.条件图 6.饼图 pie(rep(1,26),col=rainbow(26), labels = LETTERS[1:26], #标签 radius ...

  4. R语言与医学统计图形【4】直方图、金字塔图

    R语言基础绘图系统 基础图形--直方图.金字塔图 3.直方图 参数设置及比较. op <- par(mfrow=c(2,3)) data <- rnorm(100,10,5) hist(d ...

  5. R语言与医学统计图形【3】条形图、误差图

    R语言基础绘图系统 基础图形--条形图.误差图 3.条形图 barplot接收的数据是矩阵而非数据框. data <- sample(c(50:80),5) barplot(data,col=h ...

  6. R语言与医学统计图形【2】散点图、盒形图

    R语言基础绘图系统 基础图形--散点图.盒形图 plot是一个泛型函数(generic method),对于不同的数据绘制不同的图形. par函数的大部分参数在plot中通用. 1.散点图 plot绘 ...

  7. R语言与医学统计图形-【28】ggplot2扩展包ggrepel、ggsci、gganimate、ggpubr

    ggplot2绘图系统--扩展包ggrepel.ggsci.gganimate.ggpubr等 部分扩展包可在CRAN直接下载,有些需借助devtools包从Github下载. 1. ggrepel包 ...

  8. R语言与医学统计图形【8】颜色的选取

    R语言基础绘图系统 基础绘图包之低级绘图函数--内置颜色. 1.内置颜色选取 功能657种内置颜色.colors() 调色板函数:palette(), rgb(), rainbow(). palett ...

  9. R语言与医学统计图形【7】低级绘图函数

    R语言基础绘图系统 基础绘图包之低级绘图函数--气泡图.一页多图.背景网格.添加线条和散点.数学表达式 4.气泡图 symbols是高级绘图函数,可在图上添加标记,标记的形状包括:circles,sq ...

随机推荐

  1. Go 语言实现 gRPC 的发布订阅模式,REST 接口和超时控制

    原文链接: 测试小姐姐问我 gRPC 怎么用,我直接把这篇文章甩给了她 上篇文章 gRPC,爆赞 直接爆了,内容主要包括:简单的 gRPC 服务,流处理模式,验证器,Token 认证和证书认证. 在多 ...

  2. [对对子队]会议记录5.22(Scrum Meeting9)

    今天已完成的工作 梁河览 ​ 工作内容:修改第一到九关新手引导,修复关卡选择bug ​ 相关issue:优化初步导出版本 ​ 相关签入:fix:修改第一关到第九关的新手引导和地图场景的bug 马嘉 ​ ...

  3. Java基础之原生JDBC操作数据库

    前言 日常开发中,我们都习惯了使用ORM框架来帮我们操作数据库,本文复习.记录Java如何使用原生JDBC操作数据库 代码编写 封装几个简单方法 find查询方法 findOne查询方法 update ...

  4. MOSFET管驱动电路的设计

    https://wenku.baidu.com/view/ae727da5caaedd3382c4d3b9.html?mark_pay_doc=2&mark_rec_page=1&ma ...

  5. 按之字形顺序打印二叉树 牛客网 剑指Offer

    按之字形顺序打印二叉树 牛客网 剑指Offer 题目描述 请实现一个函数按照之字形打印二叉树,即第一行按照从左到右的顺序打印,第二层按照从右至左的顺序打印,第三行按照从左到右的顺序打印,其他行以此类推 ...

  6. CANN5.0黑科技解密 | 别眨眼!缩小隧道,让你的AI模型“身轻如燕”!

    摘要:CANN作为释放昇腾硬件算力的关键平台,通过深耕先进的模型压缩技术,聚力打造AMCT模型压缩工具,在保证模型精度前提下,不遗余力地降低模型的存储空间和计算量. 随着深度学习的发展,推理模型巨大的 ...

  7. 检查redis是否正常运行

    [XX@XXX]$ ps -ef | grep redisXX   8047 1 0 10:06 ? 00:00:03 redis-server *:6379XX   9983 9802 0 11:2 ...

  8. # Host xx.xxx.x.xxx found: line 1 /root/.ssh/known_hosts updated. Original contents retained as /root/.ssh/known_hosts.old

    一直可以ssh登录远程服务器,突然不行了. 原因:远程服务器最近打过安全补丁,安全标识已经更新. 清理本机的安全密匙即可 解决办法: #ssh-keygen -R "需要远程服务器ip地址& ...

  9. c++学习笔记(四)

    动态内存分配 使用new分配内存 1.指针的用处是在运行阶段分配未命名的内存以储存值. 2.在此情况下,只能通过指针来访问内存. int *ptr_int=new int;//在内存阶段为一个int值 ...

  10. eclipse下的python环境安装

    添加python开发环境到eclipse:   点击help--install New Software 点击add,弹出新窗口: Name:填PyDev Location:填 http://pyde ...