title: How can I plot a histogram of a long-tailed data using R?
body: <p>I have data that is mostly centered in a small range (1-10) but there is a significant number of points (say, 10%) which are in (10-1000). I would like to plot a histogram for this data that will focus on (1-10) but will also show the (10-1000) data. Something like a log-scale for th histogram.</p>
  
  <p>Yes, i know this means not all bins are of equal size</p>
  
  <p>A simple <code>hist(x)</code> gives
  <img src="https://i.stack.imgur.com/q4KFm.png" alt="alt text">
  while <code>hist(x,breaks=c(0,1,1.1,1.2,1.3,1.4,1.5,1.6,1.7,1.8,1.9,2,3,4,5,7.5,10,15,20,50,100,200,500,1000,10000)))</code> gives
  <img src="https://i.stack.imgur.com/iHgkp.png" alt="alt text"></p>
  
  <p>none of which is what I want.</p>
  
  <p><strong>update</strong>
  following the answers here I now produce something that is almost exactly what I want (I went with a continuous plot instead of bar-histogram):</p>
  
  <pre><code>breaks &lt;- c(0,1,1.1,1.2,1.3,1.4,1.5,1.6,1.7,1.8,1.9,2,4,8)
  ggplot(t,aes(x)) + geom_histogram(colour="darkblue", size=1, fill="blue") + scale_x_log10('true size/predicted size', breaks = breaks, labels = breaks)![alt text][3]
  </code></pre>
  
  <p><img src="https://i.stack.imgur.com/gnfLv.png" alt="alt text">
  the only problem is that I'd like to match between the scale and the actual bars plotted. There two options for doing that : the one is simply use the actual margins of the plotted bars (how?) then get "ugly" x-axis labels like 1.1754,1.2985 etc. The other, which I prefer, is to control the actual bins margins used so they will match the breaks.</p>