           enabled: false
       legend:
         enabled: false
-        useHTML: true
-        verticalAlign: 'top'
       series: @generateSeries(data.datasets)
+    }
+
+  invoicesChart: (id, data) ->
+    options = @baseChartOptions(id, data)
+    options.yAxis['labels'] =
+      format: '{value}k €'
+      formatter: ->
+        value = if @value < 1000 then @value else "#{@value / 1000.0}k"
+        "#{value} €"
+
+    $(id).highcharts(options)
 
   budgetChart: (id, data) ->
-    currentWeek = @getCurrentWeek(data.labels)
-    $(id).highcharts
-      chart:
-        type: 'line'
-        events:
-          load: (e) ->
-            return unless data.datasets[0]
-            segments = []
-            width = @plotWidth / @pointCount
-            lastPosition = -1
-            for position in @xAxis[0].tickPositions
-              segmentPosition = @plotLeft
-              segmentWidth = 0
-              for i in [0..@pointCount - 1]
-                if i <= position
-                  segmentPosition += width
-                  if i > lastPosition
-                    segmentWidth += width
+    options = @baseChartOptions(id, data)
+    options.chart['events'] =
+      load: (e) ->
+        return unless data.datasets[0]
+        segments = []
+        width = @plotWidth / @pointCount
+        lastPosition = -1
+        for position in @xAxis[0].tickPositions
+          segmentPosition = @plotLeft
+          segmentWidth = 0
+          for i in [0..@pointCount - 1]
+            if i <= position
+              segmentPosition += width
+              if i > lastPosition
+                segmentWidth += width
 
-              segments.push
-                position: segmentPosition
-                width: segmentWidth
+          segments.push
+            position: segmentPosition
+            width: segmentWidth
 
-              lastPosition = position
+          lastPosition = position
 
-            for segment, i in segments
-              $label = $($(id).find('.highcharts-xaxis-labels span')[i])
-              $label.css('left', segment.position - (segment.width / 2) - ($label.width() / 2) - 1)
+        for segment, i in segments
+          $label = $($(id).find('.highcharts-xaxis-labels span')[i])
+          $label.css('left', segment.position - (segment.width / 2) - ($label.width() / 2) - 1)
+    options.xAxis['tickPositions'] = data.ticks
+    options.yAxis['min'] = if data.datasets[0] && parseInt(data.datasets[0].data[0], 10) is 0 then undefined else 0
+    options.yAxis.startOnTick = false
+    options.yAxis['labels'] =
+      useHTML: true
+      format: '{value}k €'
+      formatter: ->
+        value = if @value < 1000 then @value else "#{@value / 1000.0}k"
+        "#{value} €"
+    options.yAxis['plotLines'] = [{
+      value: data.budget
+      color: '#777777'
+      width: 2
+      label:
+        useHTML: true
+        style:
+          fontSize: null
+        text: "<span class='label label-default highcharts-plotline-budget'>#{I18n.t("labels.chart.project.budget_estimate")}: #{accounting.formatMoney(data.budget, {symbol: '€', format: '%v %s', decimal: ',', thousand: '.'})}</span>"
+    }]
 
-      credits:
-        enabled: false
-      title:
-        text: null
-        useHTML: true
-      noData:
-        style:
-          fontSize: "18px"
-          fontWeight: "bold"
-          color: "#ccc"
-      plotOptions:
-        series:
-          point:
-            events:
-              mouseOver: ->
-                $("#{id} .highcharts-xaxis-labels span").removeClass('hover')
-                $("#{id} .highcharts-xaxis-labels span:contains(#{@category.short})").addClass('hover')
-      xAxis: [{
-        categories: @generateMonthCategories(data.labels),
-        title:
-          text: null
-        labels:
-          format: '{value.short}'
-          useHTML: true
-        plotBands: [{
-          color: 'rgba(66, 139, 202, 0.2)'
-          from: currentWeek.start
-          to: currentWeek.end
-        }]
-        tickPositions: data.ticks
-      }],
-      yAxis:
-        min: if data.datasets[0] && parseInt(data.datasets[0].data[0], 10) is 0 then undefined else 0
-        startOnTick: false
-        labels:
-          useHTML: true
-          format: '{value}k €'
-          formatter: ->
-            value = if @value < 1000 then @value else "#{@value / 1000.0}k"
-            "#{value} €"
-        title:
-          text: null
-        plotLines: [{
-          value: data.budget
-          color: '#777777'
-          width: 2
-          label:
-            useHTML: true
-            style:
-              fontSize: null
-            text: "<span class='label label-default highcharts-plotline-budget'>#{I18n.t("labels.chart.project.budget_estimate")}: #{accounting.formatMoney(data.budget, {symbol: '€', format: '%v %s', decimal: ',', thousand: '.'})}</span>"
-        }]
-      tooltip:
-        shared: true
-        crosshairs: [{
-          color: 'rgba(51, 51, 51, 0.2)'
-        }]
-        headerFormat: '<div class="highcharts-tooltip-header"><b>{point.key.date}</b></div>'
-        pointFormatter: ->
-          value = accounting.formatMoney(@y, {symbol: '€', format: '%v %s', decimal: ',', thousand: '.'})
-          "<div><div style='float: left;'><span style='color:#{@color}'>\u25CF</span> #{@series.name}: </div><div style='float: right;'><b>#{value}</b></div></div>"
-        useHTML: true
-      navigation:
-        buttonOptions:
-          enabled: false
-      legend:
-        enabled: false
-        useHTML: true
-        verticalAlign: 'top'
-      series: @generateSeries(data.datasets)
+    $(id).highcharts(options)
 
 $(document).on 'mouseleave', '.chart', ->
   $(@).find('.highcharts-xaxis-labels span').removeClass('hover')

        break
    currentWeek

  invoicesChart: (id, data) ->
    currentWeek = @getCurrentWeek(data.labels)
    $(id).highcharts
      chart:
        type: 'line'
      credits:
        enabled: false
      title:
        text: null
        useHTML: true
      noData:
        style:
          fontSize: "18px"

        ]
    series

  generateCategories: (labels) ->
    categories = []
    for month, i in labels
      date = moment(month)
