Как создать временную шкалу зараженных хостов из файла CSV? - PullRequest
0 голосов
/ 24 декабря 2018

Я пытаюсь построить (либо с R, либо с Python) график вспышек, который показывает, что на X date Х хост был заражен.У меня есть файл CSV, который содержит три столбца: ["MD5", "Hostname", "Time"];время указывается в формате «% Y-% m-% d».Я знаю, что для этого примера MD5, возможно, может не использоваться, но он включен в качестве поля-столбца в CSV.

Ниже приведен пример гистограммы, которую я смог получить, используя данные в моем CSV-файле, но он показывает количество подсчетов (частота предупреждений о заражении) на пользователя.Как я могу связать это, чтобы показать график?

from IPython.display import HTML
import matplotlib.pyplot as plt
import pandas as pd
import numpy as np

pd.set_option('display.width', 1000)
pd.set_option('colheader_justify', 'center')
pd.set_option('colheader_justify', 'center')   # FOR TABLE <th>

data = "/Users/john/Desktop/file.csv"

data_plot = pd.read_csv(data) # av 

data_plot.columns = ["MD5", "Hostname", "Time"]

#print(data_plot)
#print(result)

host_ct = pd.value_counts(data_plot['Hostname'])

plt.axes(frameon=0)
host_ct.plot(kind='bar', rot=0, title="Summary by Host", figsize=(8,5)).grid(False)
# print(host_ct)

html_string = '''
<html>
  <head><title>HTML Pandas Dataframe with CSS</title></head>
  <link rel="stylesheet" type="text/css" href="df_style.css"/>
  <body>
    {table}
  </body>
</html>.
'''

with open('myhtml.html', 'w') as f:
    f.write(html_string.format(table=data_plot.to_html()))

# HTML(data_plot.head(30).to_html())

Вот выход файла data_plot.head:

MD5    Hostname                Time
hash   Macbook-001.001.LOCAL   2018-12-07
hash   Macbook-002.002.LOCAL   2018-12-08
hash   Macbook-003.003.LOCAL   2018-12-09

Я хотел бы, чтобы график времени показывал первую дату заражения (и на каком хосте) до последней датыинфекция (и снова в том числе, какой хост).

...