繁体   English   中英

使用ggplot2在R中绘制5D图

[英]5D plot in R using ggplot2

我正在使用以下代码绘制5D可视化。 虽然图形生成成功但是MUF40图例(第一项)中出现了一个额外的项目。 我想知道代码中是否有错误!

在更新RStudio上的一些软件包(例如Keras,Tensoreflow,集群等)之前,代码工作正常,没有任何问题。

SLAMUF <- read.csv("/Users/Ayyoub/Desktop/MUF-SLA-Ver2.11/csla_dataset.csv")
library("ggplot2")
require("ggplot2")

SLAMUF$QoS.cat <- cut(SLAMUF$QoS, quantile(SLAMUF$QoS, (0:5)/5), include.lowest = T)

ggplot(SLAMUF, aes(x=SP.InP.SP, y=SP.SP.EU, size=MUF40, color=penalty)) +
  geom_point(shape=21) +
  scale_color_gradient(low="black", high="red") +
  facet_grid(. ~ QoS.cat) +
  labs(subtitle = "Five ranges of QoS")+
  guides(size = guide_legend(order = 1)) +
  theme(legend.position = "right", 
        axis.text.x = element_text(face="bold", angle=45),
        axis.text.y = element_text(face="bold", angle=45),
        plot.subtitle = element_text(hjust = 0.5)
       )
ggsave("/Users/Ayyoub/Desktop/MUF-SLA-Ver2.11/plot3/MUF40.pdf", width=12, height=6)

> source('~/Desktop/MUF-SLA-Ver2.11/5Dvisualisation-Dataset-test.R')
Warning messages:
1: Using size for a discrete variable is not advised. 
2: Removed 2 rows containing missing values (geom_point). 

使用MUF40图例中的额外项目生成图表

您需要关闭大小图例项。

library(ggplot2)

ggplot(mtcars, aes(x = mpg, y = disp, size = cyl, color = vs)) +
  theme_bw() +
  scale_size_continuous(guide = FALSE) +
  geom_point()

我猜测你的MUF40变量具有序数性质的标签,不是吗? (离散类别,但有序)。 如果是这种情况,我建议您删除guides(size = guide_legend(order = 1))语句并添加以下内容:

scale_size_discrete(breaks = levels(SLAMUF$MUF40), limits = levels(SLAMUF$MUF40))

理论上,如果您的MUF40变量是一个因子并且正确排序了水平,那么理论上应该将您的大小变量限制为数据中的水平。

如果这没有帮助,您可能需要查看SLAMUF$MUF40值并查看是否存在任何异常情况,例如NA s, NaN s,空字符串等。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM