Как установить отметку оси, чтобы она была только основной на python

введите описание изображения здесьЯ использую контурный график для создания таблицы значений (меня интересует отклонение между случаями, а не фактическое значение). Ось Z представляет собой обычный двумерный массив значений. Однако оси X и Y представляют собой двумерные векторы, которые я преобразовываю в число, используя эту формулу:

v = (x,y)
val = x*5 + y + 2

где 0<=x<=2 и -2<=y<=2.

Я хочу, чтобы ось включала все пары векторов, поэтому я создал массив (xlabels), который выглядит так:

xlabel=[[0,-2], [0,-1], ..., [0,2], ... , [2,1], 2,2]]

Когда я пытаюсь применить это к своему графику, я получаю только первый набор значений, для которых установлена ​​метка основных тиков. Строка, которую я использую:

ax1.set_xticklabels(xlabels)

и результат, который я получаю (верхняя ось x):

Как я могу настроить отображение всех меток оси x?


person Yotam    schedule 30.07.2012    source источник


Ответы (1)


Решение состоит в том, чтобы использовать локатор:

from matplotlib.ticker import MultipleLocator
locator = MultipleLocator(1)
ax1.xaxis.set_major_locator(locator)
ax1.set_xticklabels(xlabels)
person Yotam    schedule 31.07.2012