Немного информации: Я очень новичок в программировании, и это небольшая часть моего первого скрипта. Цель этого конкретного сегмента - отобразить морскую теплоизоляцию с вертикальной глубиной по оси Y, время по оси х и интенсивность научного измерения в качестве функции тепла.Ось даты в тепловой карте морского транспорта
Я хотел бы извиниться, если на это был дан ответ в другом месте, но мои поисковые способности, должно быть, подвели меня.
sns.set()
nametag = 'Well_4_all_depths_capf'
Dp = D[D.well == 'well4']
print(Dp.date)
heat = Dp.pivot("depth", "date", "capf")
### depth, date and capf are all columns of a pandas dataframe
plt.title(nametag)
sns.heatmap(heat, linewidths=.25)
plt.savefig('%s%s.png' % (pathheatcapf, nametag), dpi = 600)
это то, что выводит из «печати (Dp.date)» поэтому я уверен, что форматирование из dataframe в формате я хочу, в частности, год, день, месяц.
0 2016-08-09
1 2016-08-09
2 2016-08-09
3 2016-08-09
4 2016-08-09
5 2016-08-09
6 2016-08-09
...
Но, когда я запускаю его ось дата всегда печатает с пустыми раз (00:00 и т.д.), что я не хочу. Есть ли способ удалить их с оси даты?
Проблема в том, что в ячейке выше я использовал эту функцию для сканирования имени файла и создания столбца с датой ??? Неправильно ли использовать datetime вместо функции даты?
D['date']=pd.to_datetime(['%s-%s-%s' %(f[0:4],f[4:6],f[6:8]) for f in
D['filename']])
Это поможет, если вы редактировали его включить минимальный полностью рабочий сценарий, позволяющий другим запускать его и видеть проблему. –
Спасибо за ответ, но я не знаю, как загрузить фрейм данных pandas, содержащий значения даты, глубины и т.д., поэтому я не знаю, как загрузить функционирующий скрипт. Дело в том, что я знаю, что это что-то с Seaborn, потому что базовые графики matplotlib не показывают форматирование времени, а только дату. Фактически, графики matplotlib печатают оси даты в виде строк, (08.08.2016) и т. Д. – frankshort
есть много вопросов о SO о форматировании меток даты на осях matplotlib. –