4

I am trying to plot boxplots as follows:

import matplotlib.pyplot as plt

plt.figure()
plt.xlabel("X")
plt.ylabel("Y")
plt.xticks([1,2,3,4], ["a", "b", "c", "d"])
plt.boxplot(data)
plt.show()

However, I got an error for plt.xticks where it says tuple object is not callable. My x-axis is labelled with 1,2,3,4 instead of 'a', 'b', 'c', 'd'.

I am following a tutorial here: Rotating custom tick labels

2
  • 1
    Call boxplot before set xticks. Commented Sep 15, 2017 at 3:55
  • Hi, I tried that but it didn't work. Commented Sep 15, 2017 at 3:57

2 Answers 2

20

The other reason this can happen is if you mistakenly redefine plt.xticks. For example, if you accidentally run:

plt.xticks = ([1,2,3,4], ['a','b','c','d']) #wrong format, uh oh

Now you've redefined plt.xticks as a tuple variable. When you then go to call it the right way:

plt.xticks([1,2,3,4], ["a", "b", "c", "d"])

You'll get an error for trying to call a tuple. The easy solution is to restart your session fresh, or at least to reimport matplotlib.pyplot which should overwrite the mistaken variable you created.

You can reimport matplotlib.pyplot as follows. Assuming you originally imported it as plt:

import importlib
importlib.reload(plt)
Sign up to request clarification or add additional context in comments.

1 Comment

This is a very accurate analysis. Thank you. step 1. remove line plt.xtick = ..... and edit pltxtick(,) step 2. restart session
4

The order with which you construct the plot matters; you must first create the plot with the data, then adjust the settings as you like:

import matplotlib.pyplot as plt   # <-- you had a typo here

plt.figure()
plt.xlabel("X")
plt.ylabel("Y")
plt.boxplot([1, 1, 2, 3, 4])
plt.xticks([1,2,3,4], ["a", "b", "c", "d"])
plt.show()

enter image description here

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.