Python Matplotlib - how to specify values on y axis?

I am new to Python and I need to generate a graph using pyplot and matplotlib like the one in the attached picture. So far I tried it like this:

 import matplotlib.pyplot as plt
 import numpy as np

 x = np.array([0,1,2,3])
 y = np.array([20,21,22,23])
 my_xticks = ['John','Arnold','Mavis','Matt']
 plt.xticks(x, my_xticks)
 plt.plot(x, y)
 plt.show()

But my problem is how can I specify a different number of values on the y axis different from the number of values on the x axis? And maybe specify them as an interval with 0.005 difference instead of a list? Many thanks!

Answers


import matplotlib.pyplot as plt
import numpy as np

x = np.array([0,1,2,3])
y = np.array([0.650, 0.660, 0.675, 0.685])
my_xticks = ['a', 'b', 'c', 'd']
plt.xticks(x, my_xticks)
plt.yticks(np.arange(y.min(), y.max(), 0.005))
plt.plot(x, y)
plt.grid(axis='y', linestyle='-')
plt.show()

Something like this should work.


Need Your Help

Ionic 2: Cordova is not available. Make sure to include cordova.js or run in a device/simulator (running in emulator)

cordova ionic-framework camera ionic2

I just set up my first ionic 2 app (I've used ionic 1 fairly extensively). I'm trying to use the ionic-native camera preview plugin.

Does std::atomic<std::string> work appropriately?

c++ c++11 atomic standard-library

I am reading through Anthony Williams' "C++ Concurrency in Action" and in Chapter 5, which talks about the new multithreading-aware memory model and atomic operations, and he states: