---------------------------------------------------------------------------
NameError Traceback (most recent call last)
<ipython-input-4-6d5dc00d7528> in <module>()
----> 1 get_ipython().run_cell_magic('heat', '', 'print(a)')
/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/IPython/core/interactiveshell.py in run_cell_magic(self, magic_name, line, cell)
2085 magic_arg_s = self.var_expand(line, stack_depth)
2086 with self.builtin_trap:
-> 2087 result = fn(magic_arg_s, cell)
2088 return result
2089
<decorator-gen-124> in heat(self, line, cell)
/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/IPython/core/magic.py in <lambda>(f, *a, **k)
186 # but it's overkill for just that one bit of state.
187 def magic_deco(arg):
--> 188 call = lambda f, *a, **k: f(*a, **k)
189
190 if callable(arg):
/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/heat.py in heat(self, line, cell)
61
62 pyheat = PyHeat(tmp_file)
---> 63 pyheat.create_heatmap()
64 pyheat.show_heatmap(output_file=filename)
65 pyheat.close_heatmap()
/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/pyheat/pyheat.py in create_heatmap(self)
44 """Method to define the heatmap using profile data."""
45 # Profile the file.
---> 46 self.__profile_file()
47 # Map profile stats to heatmap data.
48 self.__fetch_heatmap_data_from_profile()
/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/pyheat/pyheat.py in __profile_file(self)
71 self.line_profiler = pprofile.Profile()
72 self.line_profiler.runfile(
---> 73 open(self.pyfile.path, 'r'), {}, self.pyfile.path)
74
75 def __get_line_profile_data(self):
/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/pprofile.py in runfile(self, fd, argv, fd_name, compile_flags, dont_inherit, globals)
606 try:
607 sys.argv[:] = argv
--> 608 return self.runctx(code, ctx_globals, None)
609 finally:
610 sys.argv[:] = original_sys_argv
/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/pprofile.py in runctx(self, cmd, globals, locals)
586 """Similar to profile.Profile.runctx ."""
587 with self():
--> 588 exec(cmd, globals, locals)
589 return self
590
/Users/Jean/Desktop/ipython_cell_input.py in <module>()
----> 1 print(a)
NameError: name 'a' is not defined
Usually, one can access from the current notebook cell variables from previous cells (for instance, we define
ain cell 2 and access it in 3). However, I can not get that to work when using heat (example in cell 4), which is sometimes annoying (especially when creating such variable can take up some time).Full traceback (click to expand)
Would it be possible to add that feature? I have never worked on iPython extensions, but I would be glad to contribute to that one, if I'm pointed to the right part of code to improve.
Anyway, thank you for the great extension 👏