Mathematica Stack Exchange is a question and answer site for users of Mathematica. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I want to make an animated BarChart. In this I want to plot different tables which range from $10^{-60}$ to $1$.

For example:


and the next data set goes to:


However, I can't set the BarChart with ScalingFunctions->"Log" to only start if a number for the chart is higher than $10^{-12}$. Does anyone know a way to fix this?

P.S.: I already tried PlotRange->{10^-12,1}. Doesn't work though.

share|improve this question

I'm not too sure what you mean, but you seem to want to not draw the bars if they're too short. So - just an idea - you could try drawing the bars yourself:

cef[{{xmin_, xmax_}, {ymin_, ymax_}}, y_, ___] :=
  If[y > 10^-12,
    Rectangle[{xmin, ymin}, {xmax, ymax}],
    Rectangle[{xmin, ymin}, {xmin, ymin}] (* zero height *)]

   ChartLabels -> Placed[N@data[[x]], Top], 
   ScalingFunctions -> "Log",
   ChartElementFunction -> cef], 
 {x, 1, 2, 1}]


Because the < 10^-12 bars are drawn with zero height (for testing), they show up as labels but can't be seen.

With a better idea of what your current code is like, more might be possible...

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.