重叠元素的数据可视化(颜色选择)

时间:2018-08-31 08:45:19

标签: r colors data-visualization visualization

显示多个行为实例(垂直彩色条)时,它们重叠或同时发生问题。一直在以不同的方式可视化它。这两个图像显示了我的问题,第一个图像没有透明度设置,并且某些行为实例被隐藏,第二个图像改变了透明度,它揭示了其中一些行为。有没有办法使所有人都可见?通过其他代码还是颜色选择?我有多个这样的图,我需要一个相同的调色板来工作,所以这只是一个示例。

我读过我不应该使用线条或形状,但也经常不喜欢使用透明度,而应该使用较浅的颜色。还有一个问题是有色觉障碍的人-有没有人遇到过这样的问题并提出解决方法?

不透明:

enter image description here

具有透明度:

enter image description here

gb <- read_csv("p01t01UW.csv") #read in gaze behaviour (horizontal blocks)
mb <- read_csv("p04MBt5.csv") #read in movement (vertical bars)

bhvr <- c(vea = "#ff330010", controllines = "#66ccff70", tack = "#3366ff") # set colour scheme for vertical blocks

mb$Behaviour <- factor(mb$Behaviour, levels = names(bhvr), ordered = TRUE) # retain all behaviour even if not on trial 

ggplot() +
  geom_rect(
    aes(xmin = MBstrt
        , xmax = MBstop
        , fill = Behaviour
        , ymin = 0
        , ymax = 25)
    ,filter(mb, !is.na(Behaviour))

  ) +
  geom_hline(aes(yintercept = c(2:21, 23))
             , col = "gray20"
             , size = 0.25) +
  geom_rect(
    aes(xmin = Fstart
        , xmax = Fstop
        , ymin = AOIcode - 1/3
        , ymax = AOIcode + 1/3)
    , gb
    , fill = "black"
  ) +
  xlab("Time (milliseconds)") +
  ylab("Area of interest") +
  scale_y_continuous(limits = c(0, 25),
                     breaks = c(2:21, 23),
                     labels = c("Bow", "Mast", "Boom & Control lines", "Watch", "Wind indicator", "Sail", "Window", "Tell-tales", "Laser other", "Opponent", "Opponent to stern", "Sea", "Sea 2", "Sea to stern", "Sea to stern 2", "Non-Laser boat", "Other", "Coach's boat", "Pin buoy", "Committee-boat buoy", "No cursor")) +

  scale_x_continuous(labels = scales::comma) +
  scale_fill_manual(values = bhvr, drop=FALSE) +

  theme(panel.grid.major = element_blank(),
        panel.grid.minor = element_blank(), 
        panel.background = element_blank())

应该添加我正在使用带有GGplot2,readr,magrittr和dplyr软件包的Rstudio

2 个答案:

答案 0 :(得分:0)

  

数据可视化101-无论如何,我的看法。

对不起,我想念问题了,您可以删除代码,是的,我知道数据是敏感的,因此我将在几秒钟内将其删除。

如果您的变量“行为”是分类的(看来是因素),则最佳实践是使用空间。 o O作为第一道攻击线,然后是颜色。

对于

颜色色调,分类数据的处理方式相同。 “对于小区域,设计人员应使用明亮,高度饱和的颜色,以确保可区分的颜色编码。当彩色区域较大时(如在背景中),设计准则则相反:使用低饱和度的颜色;即粉彩。 ” (Munzer,2014年)

因此,较大体积的区域使用低饱和度颜色,而较小区域的颜色明亮。如果它们可以根据捕获的数据进行更改,则请做出执行决定并坚持下去。换句话说,大头钉的颜色应该更浅,但随着颜色的变化,它会随着人们制作图表的时间长于像芒泽尔这样的人整理成碎片的感觉而变得正确。

透明度增加了第四级,因此不建议您执行此操作。首先执行上一步。

如果颜色代表数字值,那么这是个很大的问题,您不应该这样做,而是使用位置和比例尺,您已经完成了。

对色盲的调色板-基本:红色与绿色相对较难看到或区分,但您的图形全为蓝色,因此对色盲友好。

请注意,在一个色盲友好的调色板中,它们如何不在同一调色板中放置绿色和红色,例外似乎是图片中的最后一个调色板,但大多数是蓝色。参见下图:

enter image description here

最后,如果您的窗户上有3D油漆,油漆或类似的东西,您可以选择企业徽标的颜色,获取十六进制代码,然后将其放入设计中以获取想要突出显示的类别变量。遇到任何麻烦,那就给我个头,我可以为您提供帮助。

欢呼

  

参考   Tamara Munzner 2014的可视化分析与设计

答案 1 :(得分:0)

任何DataViz计划的目标都是进行交流。确定viz能否成功完成这项工作的最好方法是与听众交谈。他们了解吗?颜色或其他设计特征是否遮盖了含义?您可能会发现您需要更多或更少的分辨率。或者,您可能会发现有一种更有效的方法来达到目标​​。

特别是,如果您希望黑色元素更加突出,您将拨回条形字母Alpha,以便它们移至背景。但是,如果希望用户将注意力集中在条形图上,则必须尝试弄清楚如何保持整体视觉平衡。您可能必须将视觉分为两部分,以使密集的显示不会掩盖其含义。

但是,我再次强烈建议与您的听众交谈,看看哪种方法最适合他们。