2016-08-02 119 views
2

的梦想是Jkunst回应,但我想创建一个负堆积柱形图与像highcharts highcharter演示在这里 - http://jsfiddle.net/KV5KV/创建具有Highcharter(李克特图)负堆积柱形图

我试着换所有的选项和什么不是,但我似乎无法让它一次显示多个系列,如果有人能帮助它,那将是美好的。这是我试图运行在R.

highchart() %>% 
     hc_chart(type = "bar") %>% 
     hc_title(text = "stuff") %>% 
     hc_yAxis(title = list(text = ""), 
       labels = list(format = "{value}"), min=0) %>% 
     hc_plotOptions(column = list( 
     series=list(stacking='normal'), 
     dataLabels = list(enabled = FALSE), 
     enableMouseTracking = TRUE)) %>% 
     hc_legend(enabled = FALSE) %>% 
     hc_xAxis(reversed=FALSE,opposite=TRUE,reversed=FALSE, linkedTo=0) %>% 
     hc_series(list(name="Value",color=c("#766A62"),data=list(-10, -5, -6))) %>% 
     hc_add_series(list(name="Value",color=c("#766A62"),data=list(-2, -5, -3))) %>% 
     hc_add_series(list(name="neutral",id='neutral',color=c("#766A62"),data=list(-2, -5, -3))) %>% 
     hc_add_series(list(name="Value",color=c("#766A62"),data=list(5, 1,6))) %>% 
     hc_add_series(list(name="Value",color=c("#766A62"),data=list(2, 5, 3))) %>% 
     hc_add_series(list(linkedTo='neutral',name="neutral",color=c("#766A62"),data=list(6, 8, 2))) 
+0

嗨@ edge363!你有玩具数据还是这种数据的常见结构,我们可以使用'hclikert'或类似的东西! – jbkunst

+0

首先你不要使用'hc_add_series(list(.. pars ...))'你需要使用'hc_add_series(.. pars ...)'。请看看https://cran.r-project.org/web/packages/highcharter/vignettes/replicating-highcharts-demos.html – jbkunst

回答

2

我已经做到了。

highchart() %>% 
    hc_chart(type = "bar") %>% 
    hc_title(text = "Experimental Survey Questions breakdown") %>% 
    hc_yAxis(title = list(text = ""), 
      labels = list(format = "{value}")) %>% 
    hc_plotOptions(series=list(stacking='normal'),column = list( 
    dataLabels = list(enabled = FALSE), 
    enableMouseTracking = TRUE)) %>% 
    hc_legend(enabled = FALSE) %>% 
    hc_xAxis(reversed=FALSE,opposite=TRUE,reversed=FALSE) %>% 
    hc_add_series(name="Value",color=c("rgb(205,35,35)"),data=list(-10, -5, -6)) %>% 
    hc_add_series(name="Values",color=c("rgb(165,85,85)"),data=list(-2, -5, -3)) %>% 
    hc_add_series(name="neutral",id='neutral',color=c("#766A62"),data=list(-2, -5, -3)) %>% 
    hc_add_series(name="Valuess",color=c("rgb(35,35,205)"),data=list(5, 1,6)) %>% 
    hc_add_series(name="Valuesss",color=c("rgb(85,85,165)"),data=list(2, 5, 3)) %>% 
    hc_add_series(name="Neutral",linkedTo='neutral',color=c("#766A62"),data=list(6, 8, 2)) 

^添油加醋为那些寻找答案,特别感谢好醇jbkunst,他做出这个惊人的图书馆,已经完全改变了我提出我的研究方法(你大新最好的,他们EVAH WUZ)

我仍然有如何获得实际值链接在一起的问题(中性有一条线穿过它,这是跛脚。)

+0

我很笨,只需添加一个边框宽度参数并将其设置为0即可将中性物融入到其中。 – Edge363

1

我仍然摆弄它,但这似乎更接近。我现在摆脱了颜色。我希望得到镜像的X轴,但如果我能弄明白,我会编辑它。它确实显示所有3个系列虽然

highchart() %>% 
    hc_chart(type = "bar") %>% 
    hc_title(text = "stuff") %>% 
    hc_yAxis(title = list(text = ""), 
      labels = list(format = "{value}"), min=0) %>% 

    hc_plotOptions(
    series=list(stacking='normal'), 
    dataLabels = list(enabled = TRUE), 
    enableMouseTracking = TRUE) %>% 

    hc_legend(enabled = TRUE) %>% 
    hc_xAxis(reversed=FALSE,opposite=TRUE,reversed=FALSE, linkedTo=0) %>% 
    hc_add_series(name="Value", data=list(-10, -5, -6)) %>% 
    hc_add_series(name="foo",data=list(-2, -15, -3)) %>% 
    hc_add_series(name="neutral",id='neutral',data=list(-2, -5, -4)) %>% 
    hc_add_series(name="Value",data=list(5, 1, 7)) %>% 
    hc_add_series(name="Value", linkedTo = "neutral", data=list(2, 5, 3)) 
+0

虽然这是朝着正确方向迈出的一步,但我认为有消极的一面这个比例是李克特量表吸引力的一部分。否则,其类似于堆积条形图(在某些情况下有用)。 – Edge363

+0

我意识到这一点,我的帖子的第三句应该反映这一点。 –