7

我用它来创建一个条形图:

BarChart[
 Reverse@data,
 BarOrigin -> Left,
 ChartLabels -> 
  Placed[{Reverse@labels, Reverse@data}, {Before, After}],
 ChartElementFunction -> "FadingRectangle"
 ]

有了data = {7, 10, 0, 6, 0, 3, 5}这个给

数学图形

问题是某些数据值为 0,BarChart甚至不会为它们添加标签。相反,它留下了一个开放的空间。即使值为0,我怎样才能让它仍然添加标签?

这与 Mathematica 8 一起使用。

4

3 回答 3

6

关于什么

data = {7, 10, 0, 6, 0, 3, 5}

labels = ("label " ~~ ToString[#]) & /@ data

BarChart[Reverse@data, BarOrigin -> Left,
ChartLabels -> Placed[{Reverse@labels, Reverse@data}, {Axis, After}],
ChartElementFunction -> "FadingRectangle"]

似乎“之前”不起作用,“轴”起作用?

图表

于 2012-01-12T21:12:44.043 回答
3

最简单的方法是使用类似data /. {(0|0.0) -> 0.00001}.

我认为这应该可以在不需要破解的情况下工作,因此您还应该向 support@wolfram.com 提交报告。

于 2012-01-12T19:46:10.347 回答
2

您的代码在 Windows 7 上的Mathematica 7 中工作。

data = {7, 10, 0, 6, 0, 3, 5};

labels = Row[{"label",#}]& /@ data;

BarChart[
  Reverse@data,
  BarOrigin -> Left,
  ChartLabels ->
   Placed[{Reverse@labels, Reverse@data}, {Before, After}],
  ChartElementFunction -> "FadingRectangle"
]

数学图形

于 2012-01-12T22:19:06.063 回答