title: Can I turn off scientific notation in matplotlib bar chart?
body: <p>I have a bar chart that looks like how I want it to look, except for the scientific notation on the y-axes. </p>
  
  <p>Some other solutions included using </p>
  
  <pre><code>ax.yaxis.set_major_formatter(tick)
  </code></pre>
  
  <p>which didn't work. Also, I tried checking whether this was an offset-problem, but it should have shown a '+' sign, which it doesn't in this case. </p>
  
  <p>Whenever I use:</p>
  
  <pre><code>plt.ticklabel_format(style='plain')
  </code></pre>
  
  <p>I get an error message saying:</p>
  
  <pre><code>Traceback (most recent call last):
    File "C:\Python\lib\site-packages\matplotlib\axes\_base.py", line 2831, in ticklabel_format
      self.xaxis.major.formatter.set_scientific(sb)
  AttributeError: 'FixedFormatter' object has no attribute 'set_scientific'
  
  During handling of the above exception, another exception occurred:
  
  Traceback (most recent call last):
    File "C:/Python/Projects/Kaggle 1.py", line 13, in &lt;module&gt;
      plt.ticklabel_format(style='plain')
    File "C:\Python\lib\site-packages\matplotlib\pyplot.py", line 2982, in ticklabel_format
      useMathText=useMathText)
    File "C:\Python\lib\site-packages\matplotlib\axes\_base.py", line 2856, in ticklabel_format
      "This method only works with the ScalarFormatter.")
  AttributeError: This method only works with the ScalarFormatter.
  </code></pre>
  
  <p>I've looked into this ScalarFormatter, but I couldn't get any wiser as to why it doesn;t work. I've tried to explicitly include it in the code, but it doesn't work.</p>
  
  <p>The code I use is:</p>
  
  <pre><code>import pandas as pd
  import numpy as np
  import matplotlib.pyplot as plt
  
  df = pd.read_csv("100 Sales Records.csv")
  df_new = df.groupby(['Region']).sum().sort_values("Total Profit", ascending=False)
  regions = ('Sub-Saharan Africa', 'Europe', 'Asia', 'Middle East and North Africa', 'Australia and Oceania', 'Central America and the Caribbean', 'North America')
  profit = df_new['Total Profit']
  y_pos = np.arange(len(profit))
  
  plt.bar(y_pos, profit)
  plt.xticks(y_pos, regions)
  plt.ticklabel_format(style='plain')
  plt.title('Sum of Sales')
  
  plt.show()
  </code></pre>
  
  <p>The chart currently looks like this:</p>
  
  <p><a href="https://i.stack.imgur.com/FDNtx.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/FDNtx.png" alt="enter image description here"></a></p>