code: function (vis, redraw) {
  		var series = this,
  			chart = series.chart,
  			legendItem = series.legendItem,
  			showOrHide,
  			ignoreHiddenSeries = chart.options.chart.ignoreHiddenSeries,
  			oldVisibility = series.visible;
  
  		// if called without an argument, toggle visibility
  		series.visible = vis = series.userOptions.visible = vis === UNDEFINED ? !oldVisibility : vis;
  		showOrHide = vis ? 'show' : 'hide';
  
  		// show or hide elements
  		each(['group', 'dataLabelsGroup', 'markerGroup', 'tracker'], function (key) {
  			if (series[key]) {
  				series[key][showOrHide]();
  			}
  		});
  
  		
  		// hide tooltip (#1361)
  		if (chart.hoverSeries === series) {
  			series.onMouseOut();
  		}
  
  
  		if (legendItem) {
  			chart.legend.colorizeItem(series, vis);
  		}
  
  
  		// rescale or adapt to resized chart
  		series.isDirty = true;
  		// in a stack, all other series are affected
  		if (series.options.stacking) {
  			each(chart.series, function (otherSeries) {
  				if (otherSeries.options.stacking && otherSeries.visible) {
  					otherSeries.isDirty = true;
  				}
  			});
  		}
  
  		// show or hide linked series
  		each(series.linkedSeries, function (otherSeries) {
  			otherSeries.setVisible(vis, false);
  		});
  
  		if (ignoreHiddenSeries) {
  			chart.isDirtyBox = true;
  		}
  		if (redraw !== false) {
  			chart.redraw();
  		}
  
  		fireEvent(series, showOrHide);
  	}
docs: Set the visibility of the graph
  
  @param vis {Boolean} True to show the series, false to hide. If UNDEFINED,
  the visibility is toggled.