8

是否可以在 BartChart 上获得 GridLine ?网格线将其绘制在下面,而 Mesh 似乎不适用于 BarChart。

BarChart[{Range[10], Range[10]}, 
         ChartLayout -> "Stacked", 
         GridLines -> {None, {4}}, 
         GridLinesStyle -> Directive[Orange, Thick]]

在此处输入图像描述

4

2 回答 2

15

这可以通过方法选项来完成:

BarChart[{Range[10], Range[10]}, ChartLayout -> "Stacked", 
 GridLines -> {None, {4}}, GridLinesStyle -> Directive[Orange, Thick],
  Method -> {"GridLinesInFront" -> True}]

在此处输入图像描述

(这应该适用于任何图形。)

于 2011-08-24T14:56:16.080 回答
4

您的另一个选择是使用Epilog显式绘制网格线。如果您想要一些网格线(例如垂直网格线)在后面而一些在前面,这将是解决方案。我添加了一些其他选项,以防您实际上不希望网格线流过轴。

BarChart[{Range[10], Range[10]}, ChartLayout -> "Stacked", 
 Epilog -> {Orange, Thick, Line[{{0, 4}, {3, 4}}]}, 
 PlotRangeClipping -> True, PlotRangePadding -> 0]

在此处输入图像描述

于 2011-08-24T21:04:26.817 回答