R|plotly

简介: R|plotly

plotly包:是一个基于浏览器的交互式图表库,建立在开源的JavaScript图表库plotly.js上,plotly包利用函数plot_ly函数绘制交互图。本文简单介绍几种常见图表的绘制方式,点图、线图及箱线图。


安装包准备

install.packages("plotly") ##安装方式

library(plotly) ##载入


一、点图


1)利用ColorBrewer Palette Names定义颜色,形状  大小

p <- plot_ly(data = iris, x = ~Sepal.Length, y = ~Petal.Length,

color = ~Species #颜色分类

,symbol = ~Species , symbols = c('circle','x','o')#符号分类及对应的表示符号

, colors = "Set1" #颜色选用Set1颜色集的颜色

,mode = 'markers',marker = list(size = 10)) #mode 点图;marker的大小

p

image.png


2)自定义颜色以及与分类相对应的颜色

pal <- c("red", "blue", "green") #定义颜色

pal <- setNames(pal, c("virginica", "setosa", "versicolor")) #定义对应的分类

p <- plot_ly(data = iris, x = ~Sepal.Length, y = ~Petal.Length, color = ~Species, colors = pal)

p


3)添加"悬浮"注释信息###

d <- diamonds[sample(nrow(diamonds), 1000), ]

p <- plot_ly(

 d, x = ~carat, y = ~price,

 # Hover text: 悬浮信息

 text = ~paste("Price: ", price, '$<br>Cut:', cut),

 color = ~carat, size = ~carat) ##渐变颜色

p

image.png


二、线图


1)自定义数据集

month <- c('January', 'February', 'March', 'April', 'May', 'June', 'July',

        'August', 'September', 'October', 'November', 'December')

high_2007 <- c(36.5, 26.6, 43.6, 52.3, 71.5, 81.4, 80.5, 82.2, 76.0, 67.3, 46.1, 35.0)

low_2007 <- c(23.6, 14.0, 27.0, 36.8, 47.6, 57.7, 58.9, 61.2, 53.3, 48.5, 31.0, 23.6)

high_2014 <- c(28.8, 28.5, 37.0, 56.8, 69.7, 79.7, 78.5, 77.8, 74.1, 62.6, 45.3, 39.9)

low_2014 <- c(12.7, 14.3, 18.6, 35.5, 49.9, 58.0, 60.0, 58.6, 51.7, 45.2, 32.2, 29.1)

data <- data.frame(month, high_2007, low_2007, high_2014, low_2014)

#将月份按照如下方式排序(默认是按照字母顺序排列,图形有问题)

data$month <- factor(data$month, levels = data[["month"]])

##add_trace 可添加新的图形

p <- plot_ly(data, x = ~month, y = ~high_2014, name = 'High 2014', type = 'scatter', mode = 'lines',line = list(color = 'purple', width = 4)) %>%

 add_trace(y = ~low_2014, name = 'Low 2014', line = list(color = 'rgb(22, 96, 167)', width = 4)) %>%

 add_trace(y = ~high_2007, name = 'High 2007', line = list(color = 'purple', width = 4, dash = 'dash')) %>%

 add_trace(y = ~low_2007, name = 'Low 2007', line = list(color = 'rgb(22, 96, 167)', width = 4, dash = 'dash')) %>%

 ##layout 设置标题相关信息

 layout(title = "Average High and Low Temperatures in New York",

        xaxis = list(title = "Months"),

        yaxis = list (title = "Temperature (degrees F)"))

image.png


2)综合点图和线图

trace_0 <- rnorm(100, mean = 5)

trace_1 <- rnorm(100, mean = 0)

trace_2 <- rnorm(100, mean = -5)

x <- c(1:100)

data <- data.frame(x, trace_0, trace_1, trace_2)

p <- plot_ly(data, x = ~x, y = ~trace_0, name = 'trace 0', type = 'scatter', mode = 'lines') %>%

 add_trace(y = ~trace_1, name = 'trace 1', mode = 'lines+markers') %>%

 add_trace(y = ~trace_2, name = 'trace 2', mode = 'markers')

   

三、箱线图


1)分类箱线图

p <- plot_ly(ggplot2::diamonds, y = ~price, color = ~cut, type = "box")

image.png


###多组箱线图  layout

p <- plot_ly(ggplot2::diamonds, x = ~cut, y = ~price, color = ~clarity, type = "box") %>%

 layout(boxmode = "group")

 

image.png



相关文章
Python绘图神器Matplotlib、Echarts、Pyecharts 和 Plotly ——可绘制各种图
Python绘图神器Matplotlib、Echarts、Pyecharts 和 Plotly ——可绘制各种图
Python绘图神器Matplotlib、Echarts、Pyecharts 和 Plotly ——可绘制各种图
|
3月前
|
数据可视化 Python
Matplotlib 教程 之 Matplotlib 饼图 3
使用 Matplotlib 的 `pie()` 方法绘制饼图,详细解释了 `pie()` 方法的参数,如 `x`、`labels`、`colors` 和 `autopct` 等,并提供了设置饼图标签和颜色的示例代码。饼图是一种常用的数据可视化图形,用于展示各部分在整体中的比例。`pie()` 方法可返回包含扇形、文本和自动生成文本标签的对象列表。
41 5
|
3月前
|
数据可视化 Python
Matplotlib 教程 之 Matplotlib 饼图 5
使用 Matplotlib 的 `pie()` 方法绘制饼图,通过参数设置(如颜色、标签和比例等),轻松展示各类别占比。示例代码展示了如何创建一个具有突出部分的彩色饼图并显示百分比。`pie()` 方法支持多种参数定制,包括阴影、旋转角度及文本属性等。
55 3
|
3月前
|
数据可视化 Python
Matplotlib 教程 之 Matplotlib 饼图 2
使用 Matplotlib 库中的 `pyplot` 模块 `pie()` 方法来创建饼图,并详细解释了 `pie()` 方法的各种参数,包括数据输入 `x`、扇区分离度 `explode`、标签 `labels`、颜色 `colors`、百分比格式 `autopct` 等,还说明了该方法可以返回包含扇形、文本和自动文本对象的列表。通过一个简单的示例展示了基本饼图的绘制过程。
32 4
|
3月前
|
数据可视化 Python
Matplotlib 教程 之 Matplotlib 饼图 4
使用 Matplotlib 的 `pie()` 方法绘制饼图,展示各部分占比。`pie()` 方法可通过多个参数定制图表样式,如颜色、标签和百分比显示格式等。通过实例演示了如何突出显示特定扇区并格式化百分比输出。
30 4
|
3月前
|
Linux 网络安全 Python
dash-plotly项目
dash-plotly项目
|
3月前
|
数据可视化 Python
Matplotlib 教程 之 Matplotlib 饼图 1
使用 Matplotlib 库中的 `pyplot` 模块 `pie()` 方法来绘制饼图,并详细解释了 `pie()` 方法的参数,包括数据输入 `x`、扇区间距 `explode`、标签 `labels`、颜色 `colors`、百分比格式 `autopct`、标签距离 `labeldistance`、阴影 `shadow`、半径 `radius`、起始角度 `startangle`、逆时针方向 `counterclock`、扇形属性 `wedgeprops`、文本标签属性 `textprops`、饼图中心位置 `center`
36 1
|
3月前
|
机器学习/深度学习 数据可视化 JavaScript
|
3月前
|
Python
Matplotlib 教程 之 Matplotlib 柱形图 5
本教程介绍如何使用 Matplotlib 的 `bar()` 方法绘制柱形图,涵盖参数如 x(x轴数据)、height(柱高)、width(柱宽)和 bottom、align等的用法。示例代码展示了通过 `barh()` 方法设置不同高度,绘制水平柱形图的过程。
30 0
|
3月前
|
Python
Matplotlib 教程 之 Matplotlib 柱形图 4
Matplotlib 教程 之 Matplotlib 柱形图 4
31 0