тепловых карт у меня есть Сиборн Heatmap, который выглядит следующим образом:Искусственные клещ этикетки для Сиборна
... сгенерированные из панд dataframe случайно сгенерированных значений части из которых выглядит следующим образом:
значения по оси у, все в диапазоне [0,1], а также те, на оси х в диапазоне [0,2 * пи], и я просто хочу несколько коротких поплавки на регулярные интервалы для моих меток, но я могу только получить значения, которые находятся в моем фреймворке данных. Когда я пытаюсь указать значения, которые я хочу, они не помещают их в нужное место, как показано на рисунке выше. Он мой код прямо сейчас. Как я могу получить метки осей, которые я пытался указать с помощью xticks и yticks в этом коде в правильных местах (которые были бы равномерно распределены вдоль осей)?
import pandas as pd
import numpy as np
import matplotlib as plt
from matplotlib.mlab import griddata
sns.set_style("darkgrid")
PHI, COSTH = np.meshgrid(phis, cos_thetas)
THICK = griddata(phis, cos_thetas, thicknesses, PHI, COSTH, interp='linear')
thick_df = pd.DataFrame(THICK, columns=phis, index=cos_thetas)
thick_df = thick_df.sort_index(axis=0, ascending=False)
thick_df = thick_df.sort_index(axis=1)
cmap = sns.cubehelix_palette(start=1.6, light=0.8, as_cmap=True, reverse=True)
yticks = np.array([0,0.2,0.4,0.6,0.8,1.0])
xticks = np.array([0,1,2,3,4,5,6])
g = sns.heatmap(thick_df, linewidth=0, xticklabels=xticks, yticklabels=yticks, square=True, cmap=cmap)
plt.show(g)
Обратите внимание, что я также попытался вещами одних строки 'xticks = [(х, ул), если i% 10 == 0 else '' для i, x в перечислении (xticks)] ', но значения все еще длинные, случайные поплавки. – Arnold
Если вы хотите только, например. отметьте отметку каждые пять полей, которые вы можете попробовать создать массив с четырьмя пустыми строками между каждым значением. Было бы разумно, что в ваших массивах тиков должно быть столько элементов, сколько у вашей тепловой карты есть строки/столбцы. Также я бы использовал строки вместо чисел. – Khris
Но это то, что мой комментарий выше, и проблема в том, что каждые пять значений или что-то еще длинное, неприятное поплавок. Вы имеете в виду использование этого, чтобы указать местоположение, а затем установить там отдельное строковое значение? Я могу это сделать? – Arnold