rCharts - 如何将轴标签和标题添加到NVD3图表

时间:2013-12-02 18:04:05

标签: r rcharts

我正在探索rCharts。我在向Y轴和标题添加标签时卡住了。我是rCharts的新手。

这是我的示例代码

require(rCharts)
n2 <- nPlot(Hours ~ Month, group = "Task", data = cars, type = "multiBarChart",
height = 900, width = 1110)
n2$xAxis(axisLabel = 'Year and Month')
n2

请帮忙。

1 个答案:

答案 0 :(得分:13)

回答补充标题示例2013-12-05

我不记得为什么nvd3rCharts这样做但我们在此issue中发现了这一点。该问题中建议的方法有效,但使用margin可能是更健壮的方法。我已经将两种方式放在一起。让我知道这是如何工作的。

      require(rCharts)

      df <- data.frame(x=1:20,y=runif(n=20))

      n1 <- nPlot(
        y~x,
        data=df,
        type="multiBarChart"
      )
      n1$yAxis( axisLabel = "Randomness" )

      #nvd3 draws the label but falls outside the bounds
      #so two ways to fix

      #best way I believe is to set the margin to allow room
      #nvd3 draws at -63, so something bigger than 63
      n1$chart(margin = list(left = 100))
      n1


      #second way as discussed here
      #https://github.com/ramnathv/rCharts/issues/102
      n1$yAxis( axisLabel = "Randomness", width = 40 )
      n1

现在让我们添加一个标题

有几种方法可以实现这一目标。我目前更喜欢使用带有rCharts的脚本模板。这是两个例子。 <h3> div中插入rCharts个元素。如果您希望了解它们是如何工作的,则这两个模板位于this repo

      #for a local template something like this
      #n1$templates$script <- "./chartWithTitle.html"
      n1$templates$script <- "http://timelyportfolio.github.io/rCharts_nvd3_templates/chartWithTitle.html"
      n1$set(title = "rCharts + nvd3 Power")
      n1

      #using some css style from http://tympanus.net/codrops/2012/11/02/heading-set-styling-with-css/
      #put in a different template 
      n1$templates$script <- "http://timelyportfolio.github.io/rCharts_nvd3_templates/chartWithTitle_styled.html"
      n1