Как изобразить дату на оси Y и часы на оси X?

Установка флага на ответ кинакуты кажется разумной, вы можете поместить слушателя на тело, чтобы вы могли проверить, не завис ли какой-либо элемент в определенный момент.

Однако, как вы хотите иметь дело с дочерними узлами? Вы должны, возможно, проверить, является ли этот элемент предком текущего зависающего элемента.

<script>

var isOver = (function() {
  var overElement;
  return {

    // Set the "over" element
    set: function(e) {
      overElement = e.target || e.srcElement;
    },

    // Return the current "over" element
    get: function() {
      return overElement;    
    },

    // Check if element is the current "over" element
    check: function(element) {
      return element == overElement;
    },

    // Check if element is, or an ancestor of, the 
    // current "over" element
    checkAll: function(element) {
      while (overElement.parentNode) {
         if (element == overElement) return true;
         overElement = overElement.parentNode;
      }
      return false;
    }
  };
}());


// Check every second if p0 is being hovered over
window.setInterval( function() {
  var el = document.getElementById('p0');
  document.getElementById('msg').innerHTML = isOver.checkAll(el);
}, 1000);


</script>

<body onmouseover="isOver.set(event);">
  <div>Here is a div
    <p id="p0">Here is a p in the div<span> here is a span in the p</span> foo bar </p>
  </div>
  <div id="msg"></div>
</body>
1
задан habib 27 February 2019 в 17:50
поделиться

1 ответ

Вы можете попытаться сначала превратить свой список дат и времени в pandas.Series, а затем пересчитать до часа. Нечто подобное:

import pandas as pd
import numpy as np

s = pd.Series(np.ones(len(found_time)), index=pd.DatetimeIndex(found_time))
s = s.resample('H').sum()

plt.scatter(s.index.hour, s.index.date, s=s, color='k')

# yticks
yticks = pd.date_range('2019-02-01', '2019-02-28', freq='D')
plt.yticks(yticks, [y.strftime('%m-%d') for y in yticks])
plt.ylim('2019-02-01', '2019-02-28')

# xticks
xticks = np.arange(24)
plt.xticks(xticks, ['{0:02d}:00'.format(x) for x in xticks], rotation=45, ha='right')
0
ответ дан Chris A 27 February 2019 в 17:50
поделиться
Другие вопросы по тегам:

Похожие вопросы: