import matplotlib.pyplot as plt
import matplotlib.ticker as ticker
import matplotlib
import numpy as np
x = np.array([11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0, 23, 22, 21, 20, 19,
18, 17, 16, 15, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2,
1, 0, 23, 22, 21, 20, 19, 18, 17, 16, 15, 14, 13, 12, 11])
y = np.array([10.2498027 , 3.40840691, 5.66800592, 4.73357213, 4.59928829,
7.77601006, 4.50292533, 6.74142384, 6.22113539, 5.17988422,
13.94684576, 34.99082087, 4.118949 , 11.0982419 , 10.29815611,
12.03389492, 6.31187701, 12.239558 , 5.87426932, 6.74172626,
16.47461827, 30.35541063, 10.92259073, 12.42456934, 6.01591812,
21.19466472, 9.50413895, 9.72148474, 6.47713988, 10.12320722,
11.30812869, 9.73464322, 10.83663898, 12.23193273, 18.69932898,
24.39563051, 23.28559267, 10.93052254, 16.18618557, 18.4649589 ,
9.54576214, 6.5244594 , 12.64954169, 6.91277364, 13.63560742,
17.22098351, 22.81889451, 26.23538384, 8.08662976])
font = {'family' : 'normal',
'weight' : 'bold',
'size' : 22}
matplotlib.rc('font', **font)
tick_spacing = 1
fig, ax = plt.subplots(1,1)
ax.set_axisbelow(True)
ax.yaxis.grid(color='gray', linestyle='dashed')
ax.scatter(x,y,s=140)
ax.xaxis.set_major_locator(ticker.MultipleLocator(1))
ax.yaxis.set_major_locator(ticker.MultipleLocator(1))
рендеринга:
Порядок значений по оси x является неожиданным, так как массив осей x начинается с 11, 10, 9, 8
значения воспроизведения по оси x начинаются с -1,0,1,2,3
.
Как указать matplotlib следовать порядку значений массива x, y при рендеринге?