[Solved] Cannot plot datetime64[ns] on hvplot axis (‘pandas_datetime_types’ is not defined’ error)

binverted Asks: Cannot plot datetime64[ns] on hvplot axis (‘pandas_datetime_types’ is not defined’ error)
I am simply trying to plot some values against datetime64[ns] timestamps with holoviews. That is, x-axis = nx1 datetime64[ns] values y-axis = nx1 data.

Here is a screen shot of what I have:

Screenshot of my dataframe

<class 'pandas._libs.tslibs.timestamps.Timestamp'>

and my overall code:

Code:
import hvplot.pandas
import pandas as pd


##
Code ommitted at the start to extract data and create dictionary to convert to data frame
##

#create dictionary
temp_dict = dict(sampling_time=time_y_value_is_taken, y_axis_values = y_values)

df = pd.Dataframe.from_dict(temp_dict)
df.sampling_time=df.sampling_time.astype('datetime64[ns]')
df=df.set_index('sampling_time')

##The following code cannot run this line- it throws error
df.hvplot.line()

I keep getting the error code : ‘pandas_datetime_types’ is not defined. I have also tried importing datetime as datetime – but it does not work.

EDIT: Here is the traceback:

Code:
---------------------------------------------------------------------------
NameError                                 Traceback (most recent call last)
~miniconda3envsmpess_visuallibsite-packagesIPythoncoreformatters.py in __call__(self, obj, include, exclude)
    968 
    969             if method is not None:
--> 970                 return method(include=include, exclude=exclude)
    971             return None
    972         else:

~miniconda3envsmpess_visuallibsite-packagesholoviewscoredimension.py in _repr_mimebundle_(self, include, exclude)
   1315         combined and returned.
   1316         """
-> 1317         return Store.render(self)
   1318 
   1319 

~miniconda3envsmpess_visuallibsite-packagesholoviewscoreoptions.py in render(cls, obj)
   1403         data, metadata = {}, {}
   1404         for hook in hooks:
-> 1405             ret = hook(obj)
   1406             if ret is None:
   1407                 continue

~miniconda3envsmpess_visuallibsite-packagesholoviewsipythondisplay_hooks.py in pprint_display(obj)
    280     if not ip.display_formatter.formatters['text/plain'].pprint:
    281         return None
--> 282     return display(obj, raw_output=True)
    283 
    284 

~miniconda3envsmpess_visuallibsite-packagesholoviewsipythondisplay_hooks.py in display(obj, raw_output, **kwargs)
    250     elif isinstance(obj, (CompositeOverlay, ViewableElement)):
    251         with option_state(obj):
--> 252             output = element_display(obj)
    253     elif isinstance(obj, (Layout, NdLayout, AdjointLayout)):
    254         with option_state(obj):

~miniconda3envsmpess_visuallibsite-packagesholoviewsipythondisplay_hooks.py in wrapped(element)
    144         try:
    145             max_frames = OutputSettings.options['max_frames']
--> 146             mimebundle = fn(element, max_frames=max_frames)
    147             if mimebundle is None:
    148                 return {}, {}

~miniconda3envsmpess_visuallibsite-packagesholoviewsipythondisplay_hooks.py in element_display(element, max_frames)
    190         return None
    191 
--> 192     return render(element)
    193 
    194 

~miniconda3envsmpess_visuallibsite-packagesholoviewsipythondisplay_hooks.py in render(obj, **kwargs)
     66         renderer = renderer.instance(fig='png')
     67 
---> 68     return renderer.components(obj, **kwargs)
     69 
     70 

~miniconda3envsmpess_visuallibsite-packagesholoviewsplottingrenderer.py in components(self, obj, fmt, comm, **kwargs)
    408                 doc = Document()
    409                 with config.set(embed=embed):
--> 410                     model = plot.layout._render_model(doc, comm)
    411                 if embed:
    412                     return render_model(model, comm)

~miniconda3envsmpess_visuallibsite-packagespanelviewable.py in _render_model(self, doc, comm)
    453         if comm is None:
    454             comm = state._comm_manager.get_server_comm()
--> 455         model = self.get_root(doc, comm)
    456 
    457         if config.embed:

~miniconda3envsmpess_visuallibsite-packagespanelviewable.py in get_root(self, doc, comm, preprocess)
    510         """
    511         doc = init_doc(doc)
--> 512         root = self._get_model(doc, comm=comm)
    513         if preprocess:
    514             self._preprocess(root)

~miniconda3envsmpess_visuallibsite-packagespanellayoutbase.py in _get_model(self, doc, root, parent, comm)
    120         if root is None:
    121             root = model
--> 122         objects = self._get_objects(model, [], doc, root, comm)
    123         props = dict(self._init_params(), objects=objects)
    124         model.update(**self._process_param_change(props))

~miniconda3envsmpess_visuallibsite-packagespanellayoutbase.py in _get_objects(self, model, old_objects, doc, root, comm)
    110             else:
    111                 try:
--> 112                     child = pane._get_model(doc, root, model, comm)
    113                 except RerenderError:
    114                     return self._get_objects(model, current_objects[:i], doc, root, comm)

~miniconda3envsmpess_visuallibsite-packagespanelpaneholoviews.py in _get_model(self, doc, root, parent, comm)
    237             plot = self.object
    238         else:
--> 239             plot = self._render(doc, comm, root)
    240 
    241         plot.pane = self

~miniconda3envsmpess_visuallibsite-packagespanelpaneholoviews.py in _render(self, doc, comm, root)
    304                 kwargs['comm'] = comm
    305 
--> 306         return renderer.get_plot(self.object, **kwargs)
    307 
    308     def _cleanup(self, root):

~miniconda3envsmpess_visuallibsite-packagesholoviewsplottingbokehrenderer.py in get_plot(self_or_cls, obj, doc, renderer, **kwargs)
     71         combining the bokeh model with another plot.
     72         """
---> 73         plot = super(BokehRenderer, self_or_cls).get_plot(obj, doc, renderer, **kwargs)
     74         if plot.document is None:
     75             plot.document = Document() if self_or_cls.notebook_context else curdoc()

~miniconda3envsmpess_visuallibsite-packagesholoviewsplottingrenderer.py in get_plot(self_or_cls, obj, doc, renderer, comm, **kwargs)
    241             init_key = tuple(v if d is None else d for v, d in
    242                              zip(plot.keys[0], defaults))
--> 243             plot.update(init_key)
    244         else:
    245             plot = obj

~miniconda3envsmpess_visuallibsite-packagesholoviewsplottingplot.py in update(self, key)
    980     def update(self, key):
    981         if len(self) == 1 and ((key == 0) or (key == self.keys[0])) and not self.drawn:
--> 982             return self.initialize_plot()
    983         item = self.__getitem__(key)
    984         self.traverse(lambda x: setattr(x, '_updated', True))

~miniconda3envsmpess_visuallibsite-packagesholoviewsplottingbokehelement.py in initialize_plot(self, ranges, plot, plots, source)
   1388             element = self.hmap.last
   1389         key = util.wrap_tuple(self.hmap.last_key)
-> 1390         ranges = self.compute_ranges(self.hmap, key, ranges)
   1391         self.current_ranges = ranges
   1392         self.current_frame = element

~miniconda3envsmpess_visuallibsite-packagesholoviewsplottingplot.py in compute_ranges(self, obj, key, ranges)
    636             if (not (axiswise and not isinstance(obj, HoloMap)) or
    637                 (not framewise and isinstance(obj, HoloMap))):
--> 638                 self._compute_group_range(group, elements, ranges, framewise,
    639                                           axiswise, robust, self.top_level,
    640                                           prev_frame)

~miniconda3envsmpess_visuallibsite-packagesholoviewsplottingplot.py in _compute_group_range(cls, group, elements, ranges, framewise, axiswise, robust, top_level, prev_frame)
    853                     continue
    854                 matching &= (
--> 855                     len({'date' if isinstance(v, util.datetime_types) else 'number'
    856                          for rng in rs for v in rng if util.isfinite(v)}) < 2
    857                 )

~miniconda3envsmpess_visuallibsite-packagesholoviewsplottingplot.py in <setcomp>(.0)
    854                 matching &= (
    855                     len({'date' if isinstance(v, util.datetime_types) else 'number'
--> 856                          for rng in rs for v in rng if util.isfinite(v)}) < 2
    857                 )
    858             if matching:

~miniconda3envsmpess_visuallibsite-packagesholoviewscoreutil.py in isfinite(val)
    902         return finite
    903     elif isinstance(val, datetime_types+timedelta_types):
--> 904         return not isnat(val)
    905     elif isinstance(val, (basestring, bytes)):
    906         return True

~miniconda3envsmpess_visuallibsite-packagesholoviewscoreutil.py in isnat(val)
    866     elif pd and val is pd.NaT:
    867         return True
--> 868     elif pd and isinstance(val, pandas_datetime_types+pandas_timedelta_types):
    869         return pd.isna(val)
    870     else:

NameError: name 'pandas_datetime_types' is not defined

Any suggestions? Thank you

Ten-tools.com may not be responsible for the answers or solutions given to any question asked by the users. All Answers or responses are user generated answers and we do not have proof of its validity or correctness. Please vote for the answer that helped you in order to help others find out which is the most helpful answer. Questions labeled as solved may be solved or may not be solved depending on the type of question and the date posted for some posts may be scheduled to be deleted periodically. Do not hesitate to share your response here to help other visitors like you. Thank you, Ten-tools.