R:ggplot2和plotly的“ cex”选项

统计555

我正在使用R编程语言。我试图弄清楚一旦在基础R中创建了ggplot2 / plotly地图,该如何“重新创建”它们。

例如,我创建了一些数据并绘制了一个图:

library(Rtsne)
library(cluster)
library(ggplot2)
library(dplyr)
library(dbscan)
library(plotly)


#generate data

var_1 <- rnorm(100,1,4)
var_2<-rnorm(100,10,5)
var_3 <- sample( LETTERS[1:4], 100, replace=TRUE, prob=c(0.1, 0.2, 0.65, 0.05) )
response_variable <- sample( LETTERS[1:2], 100, replace=TRUE, prob=c(0.4, 0.6) )


#put them into a data frame called "f"
f <- data.frame(var_1, var_2, var_3, response_variable)

#declare var_3 and response_variable as factors
f$response_variable = as.factor(f$response_variable)
f$var_3 = as.factor(f$var_3)

#create id
f$ID <- seq_along(f[,1])

#gower distance

gower_dist <- daisy(f[, -c(4,5)],
                    metric = "gower")

#lof plot

lof <- lof(gower_dist, k=3)


plot(gower_dist, pch = ".", main = "LOF (k=3)")
points(gower_dist, cex = (lof-1)*3, pch = 1, col="red")
text(gower_dist[lof>2,], labels = round(lof, 1)[lof>2], pos = 3)

这是情节的图片:

在此处输入图片说明

现在,我试图在ggplot2和plotly中重新创建一个类似的图。我运行了一个称为tsne的统计算法:

# tsne


tsne_obj <- Rtsne(gower_dist,  is_distance = TRUE)

tsne_data <- tsne_obj$Y %>%
    data.frame() %>%
    setNames(c("X", "Y")) %>%
    mutate(
           name = f$ID)

我希望新图的轴为:(tsne_data $ X,tsne_data $ Y)。

我不确定是否仍然可以使用红色圆圈在ggplot2中重新创建以前的曲线(红色圆圈的半径与“ lof”分数成正比)。是否仍然可以像以前一样在ggplot2中进行类似的绘制?是否可以将ggplot2中的点的大小更改为与“ lof”值成比例?

我尝试了以下方法:

plot = ggplot(aes(x = X, y = Y), data = tsne_data) + geom_point(aes())

并得到了这样的东西:

在此处输入图片说明

是否可以根据“ lof”的值来更改这些点的大小(例如

summary(lof)
hist(lof, breaks=10

)

是否有可能在您拖动ggplot2的图形表示形式的鼠标时显示lof得分和f $ ID?

plotly_plot = ggplotly(plot)

谢谢!

来源:https : //www.rdocumentation.org/packages/dbscan/versions/1.1-5/topics/lof https://dpmartin42.github.io/posts/r/cluster-mixed-types

用户名

您可以基于lof更改点大小。ggplotly还可以调整图中的工具提示以显示lof和名称。

编辑:在工具提示中添加了var1,var2和var3

tsne_obj <- Rtsne(gower_dist,  is_distance = TRUE)

tsne_data <- tsne_obj$Y %>%
  data.frame() %>%
  setNames(c("X", "Y")) %>%
  mutate(
    name = f$ID, 
    lof=lof,
    var1=f$var_1,
    var2=f$var_2,
    var3=f$var_3
    )

p1 <- ggplot(aes(x = X, y = Y, size=lof, key=name, var1=var1, 
  var2=var2, var3=var3), data = tsne_data) + 
  geom_point(shape=1, col="red")+
  theme_minimal()
p1

ggplotly(p1, tooltip = c("lof", "name", "var1", "var2", "var3"))

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Plotly 和 ggplot2 在 R 的条形图中悬停文本不起作用

来自分类Dev

将相同的颜色放在plotly和ggplot2中

来自分类Dev

R:使用ggplot2 / plotly绘制“楼梯”

来自分类Dev

ggplot2:如何获取facet_grid()的labeller = label_both和facet_wrap()的ncol选项的合并功能?

来自分类Dev

ggplot2 + plotly:轴标题消失

来自分类Dev

如何使用cex.axis为x和y轴设置不同的字体大小

来自分类Dev

如何使用cex.axis为x和y轴设置不同的字体大小

来自分类Dev

当cex.lab在R中不起作用时,如何增加x和y轴标签的字体大小?

来自分类Dev

ggplot2线和r ^ 2的方程

来自分类Dev

在plotly中复制带有刻面和箭头注释的ggplot2图表

来自分类Dev

R - plotly/ggplot2 - 在分组箱线图上动态更改颜色

来自分类Dev

ggplot2:贴标机中的摄氏度符号,在knitr中带有dev =“ tikz”选项

来自分类Dev

ggplot2:贴标机中的摄氏度符号,在knitr中带有dev =“ tikz”选项

来自分类Dev

指定 ggplot2 标签器选项而不传递标签值

来自分类Dev

使用R和ggplot2绘制ECDF值

来自分类Dev

ggplot2和其他功能(R)之间的加号

来自分类Dev

ggplot2和R中的简单饼图问题

来自分类Dev

ggplot2和其他功能(R)之间的加号

来自分类Dev

R-ggplot2-geom_histogram中的右间隔选项

来自分类Dev

子集和ggplot2

来自分类Dev

ggplot2 / plotly 将数字悬停在条形上

来自分类Dev

如何使用ggplot2和plotly在一个变量上添加移动平均值

来自分类Dev

R和ggplot2:如何连接折线图的点和极坐标?

来自分类Dev

R 中的 ggplot2() 条形图和 dplyr() 分组和整体数据

来自分类Dev

ggplot2与填充和组

来自分类Dev

使用ggplot2和特殊字符

来自分类Dev

ggplot2的时间序列和图例

来自分类Dev

有多行的Shiny和ggplot2

来自分类Dev

ggplot2图和覆盖

Related 相关文章

  1. 1

    Plotly 和 ggplot2 在 R 的条形图中悬停文本不起作用

  2. 2

    将相同的颜色放在plotly和ggplot2中

  3. 3

    R:使用ggplot2 / plotly绘制“楼梯”

  4. 4

    ggplot2:如何获取facet_grid()的labeller = label_both和facet_wrap()的ncol选项的合并功能?

  5. 5

    ggplot2 + plotly:轴标题消失

  6. 6

    如何使用cex.axis为x和y轴设置不同的字体大小

  7. 7

    如何使用cex.axis为x和y轴设置不同的字体大小

  8. 8

    当cex.lab在R中不起作用时,如何增加x和y轴标签的字体大小?

  9. 9

    ggplot2线和r ^ 2的方程

  10. 10

    在plotly中复制带有刻面和箭头注释的ggplot2图表

  11. 11

    R - plotly/ggplot2 - 在分组箱线图上动态更改颜色

  12. 12

    ggplot2:贴标机中的摄氏度符号,在knitr中带有dev =“ tikz”选项

  13. 13

    ggplot2:贴标机中的摄氏度符号,在knitr中带有dev =“ tikz”选项

  14. 14

    指定 ggplot2 标签器选项而不传递标签值

  15. 15

    使用R和ggplot2绘制ECDF值

  16. 16

    ggplot2和其他功能(R)之间的加号

  17. 17

    ggplot2和R中的简单饼图问题

  18. 18

    ggplot2和其他功能(R)之间的加号

  19. 19

    R-ggplot2-geom_histogram中的右间隔选项

  20. 20

    子集和ggplot2

  21. 21

    ggplot2 / plotly 将数字悬停在条形上

  22. 22

    如何使用ggplot2和plotly在一个变量上添加移动平均值

  23. 23

    R和ggplot2:如何连接折线图的点和极坐标?

  24. 24

    R 中的 ggplot2() 条形图和 dplyr() 分组和整体数据

  25. 25

    ggplot2与填充和组

  26. 26

    使用ggplot2和特殊字符

  27. 27

    ggplot2的时间序列和图例

  28. 28

    有多行的Shiny和ggplot2

  29. 29

    ggplot2图和覆盖

热门标签

归档