Python Forum
How to compile this graphing program to an exe file?
Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
How to compile this graphing program to an exe file?
#1
import matplotlib.pyplot as plt

x = [1, 2, 3]
y = [2, 4, 1]

plt.xlabel('x - axis')
plt.ylabel('y - axis')
plt.title('My first graph!')
plt.scatter(x, y, label= "stars", color= "green", marker= "*", s=30)
plt.show()
Tried the above I got on the web. Runs ok in Pycharm. But I cannot compile it to an exe file using Pyinstaller. I want to get the graphing in my program.

Error:
argval = const_list[const_index] IndexError: tuple index out of range
Appreciate your advice.

Thanks.
Reply
#2
Please show entire unmodified error traceback as it contains important debugging info.
Reply
#3
(Dec-04-2021, 10:48 PM)Larz60+ Wrote: Please show entire unmodified error traceback as it contains important debugging info.
Thanks. Please see below.
Error:
PS C:\Users\adam\PycharmProjects\alpha> pyinstaller graphs.py --onefile 423 INFO: PyInstaller: 4.7 423 INFO: Python: 3.10.0 447 INFO: Platform: Windows-10-10.0.19043-SP0 449 INFO: wrote C:\Users\adam\PycharmProjects\alpha\graphs.spec 467 INFO: UPX is not available. 470 INFO: Extending PYTHONPATH with paths ['C:\\Users\\adam\\PycharmProjects\\alpha'] 1624 INFO: checking Analysis 1625 INFO: Building Analysis because Analysis-00.toc is non existent 1625 INFO: Initializing module dependency graph... 1632 INFO: Caching module graph hooks... 1656 INFO: Analyzing base_library.zip ... 6715 INFO: Processing pre-find module path hook distutils from 'C:\\Users\\adam\\PycharmProjects\\alpha\\venv\\lib\\site-packages\\PyInstaller\\hooks\\pre_find_module_path\\hook-distutils.py'. 6717 INFO: distutils: retargeting to non-venv dir 'C:\\Users\\adam\\AppData\\Local\\Programs\\Python\\Python310\\lib' 8590 INFO: Caching module dependency graph... 8865 INFO: running Analysis Analysis-00.toc 8887 INFO: Adding Microsoft.Windows.Common-Controls to dependent assemblies of final executable required by C:\Users\adam\AppData\Local\Programs\Python\Python310\python.exe 9155 INFO: Analyzing C:\Users\adam\PycharmProjects\alpha\graphs.py 10502 INFO: Processing pre-find module path hook site from 'C:\\Users\\adam\\PycharmProjects\\alpha\\venv\\lib\\site-packages\\PyInstaller\\hooks\\pre_find_module_path\\hook-site.py'. 10504 INFO: site: retargeting to fake-dir 'C:\\Users\\adam\\PycharmProjects\\alpha\\venv\\lib\\site-packages\\PyInstaller\\fake-modules' Traceback (most recent call last): File "C:\Users\adam\AppData\Local\Programs\Python\Python310\lib\runpy.py", line 196, in _run_module_as_main return _run_code(code, main_globals, None, File "C:\Users\adam\AppData\Local\Programs\Python\Python310\lib\runpy.py", line 86, in _run_code exec(code, run_globals) File "C:\Users\adam\PycharmProjects\alpha\venv\Scripts\pyinstaller.exe\__main__.py", line 7, in <module> File "C:\Users\adam\PycharmProjects\alpha\venv\lib\site-packages\PyInstaller\__main__.py", line 124, in run run_build(pyi_config, spec_file, **vars(args)) File "C:\Users\adam\PycharmProjects\alpha\venv\lib\site-packages\PyInstaller\__main__.py", line 58, in run_build PyInstaller.building.build_main.main(pyi_config, spec_file, **kwargs) File "C:\Users\adam\PycharmProjects\alpha\venv\lib\site-packages\PyInstaller\building\build_main.py", line 782, in main build(specfile, kw.get('distpath'), kw.get('workpath'), kw.get('clean_build')) File "C:\Users\adam\PycharmProjects\alpha\venv\lib\site-packages\PyInstaller\building\build_main.py", line 714, in build exec(code, spec_namespace) File "C:\Users\adam\PycharmProjects\alpha\graphs.spec", line 7, in <module> a = Analysis(['graphs.py'], File "C:\Users\adam\PycharmProjects\alpha\venv\lib\site-packages\PyInstaller\building\build_main.py", line 277, in __init__ self.__postinit__() File "C:\Users\adam\PycharmProjects\alpha\venv\lib\site-packages\PyInstaller\building\datastruct.py", line 155, in __postinit__ self.assemble() File "C:\Users\adam\PycharmProjects\alpha\venv\lib\site-packages\PyInstaller\building\build_main.py", line 439, in assemble priority_scripts.append(self.graph.add_script(script)) File "C:\Users\adam\PycharmProjects\alpha\venv\lib\site-packages\PyInstaller\depend\analysis.py", line 265, in add_script self._top_script_node = super().add_script(pathname) File "C:\Users\adam\PycharmProjects\alpha\venv\lib\site-packages\PyInstaller\lib\modulegraph\modulegraph.py", line 1433, in add_script self._process_imports(n) File "C:\Users\adam\PycharmProjects\alpha\venv\lib\site-packages\PyInstaller\lib\modulegraph\modulegraph.py", line 2850, in _process_imports target_module = self._safe_import_hook(*import_info, **kwargs)[0] File "C:\Users\adam\PycharmProjects\alpha\venv\lib\site-packages\PyInstaller\lib\modulegraph\modulegraph.py", line 2301, in _safe_import_hook target_modules = self.import_hook( File "C:\Users\adam\PycharmProjects\alpha\venv\lib\site-packages\PyInstaller\lib\modulegraph\modulegraph.py", line 1505, in import_hook target_package, target_module_partname = self._find_head_package( File "C:\Users\adam\PycharmProjects\alpha\venv\lib\site-packages\PyInstaller\lib\modulegraph\modulegraph.py", line 1684, in _find_head_package target_package = self._safe_import_module( File "C:\Users\adam\PycharmProjects\alpha\venv\lib\site-packages\PyInstaller\depend\analysis.py", line 387, in _safe_import_module return super()._safe_import_module(module_basename, module_name, parent_package) File "C:\Users\adam\PycharmProjects\alpha\venv\lib\site-packages\PyInstaller\lib\modulegraph\modulegraph.py", line 2062, in _safe_import_module self._process_imports(n) File "C:\Users\adam\PycharmProjects\alpha\venv\lib\site-packages\PyInstaller\lib\modulegraph\modulegraph.py", line 2850, in _process_imports target_module = self._safe_import_hook(*import_info, **kwargs)[0] File "C:\Users\adam\PycharmProjects\alpha\venv\lib\site-packages\PyInstaller\lib\modulegraph\modulegraph.py", line 2510, in _safe_import_hook self.import_hook( File "C:\Users\adam\PycharmProjects\alpha\venv\lib\site-packages\PyInstaller\lib\modulegraph\modulegraph.py", line 1544, in import_hook for target_submodule in self._import_importable_package_submodules( File "C:\Users\adam\PycharmProjects\alpha\venv\lib\site-packages\PyInstaller\lib\modulegraph\modulegraph.py", line 1794, in _import_importable_package_submodules submodule = self._safe_import_module( File "C:\Users\adam\PycharmProjects\alpha\venv\lib\site-packages\PyInstaller\depend\analysis.py", line 387, in _safe_import_module return super()._safe_import_module(module_basename, module_name, parent_package) File "C:\Users\adam\PycharmProjects\alpha\venv\lib\site-packages\PyInstaller\lib\modulegraph\modulegraph.py", line 2062, in _safe_import_module self._process_imports(n) File "C:\Users\adam\PycharmProjects\alpha\venv\lib\site-packages\PyInstaller\lib\modulegraph\modulegraph.py", line 2850, in _process_imports target_module = self._safe_import_hook(*import_info, **kwargs)[0] File "C:\Users\adam\PycharmProjects\alpha\venv\lib\site-packages\PyInstaller\lib\modulegraph\modulegraph.py", line 2301, in _safe_import_hook target_modules = self.import_hook( File "C:\Users\adam\PycharmProjects\alpha\venv\lib\site-packages\PyInstaller\lib\modulegraph\modulegraph.py", line 1518, in import_hook submodule = self._safe_import_module(head, mname, submodule) File "C:\Users\adam\PycharmProjects\alpha\venv\lib\site-packages\PyInstaller\depend\analysis.py", line 387, in _safe_import_module return super()._safe_import_module(module_basename, module_name, parent_package) File "C:\Users\adam\PycharmProjects\alpha\venv\lib\site-packages\PyInstaller\lib\modulegraph\modulegraph.py", line 2062, in _safe_import_module self._process_imports(n) File "C:\Users\adam\PycharmProjects\alpha\venv\lib\site-packages\PyInstaller\lib\modulegraph\modulegraph.py", line 2850, in _process_imports target_module = self._safe_import_hook(*import_info, **kwargs)[0] File "C:\Users\adam\PycharmProjects\alpha\venv\lib\site-packages\PyInstaller\lib\modulegraph\modulegraph.py", line 2301, in _safe_import_hook target_modules = self.import_hook( File "C:\Users\adam\PycharmProjects\alpha\venv\lib\site-packages\PyInstaller\lib\modulegraph\modulegraph.py", line 1518, in import_hook submodule = self._safe_import_module(head, mname, submodule) File "C:\Users\adam\PycharmProjects\alpha\venv\lib\site-packages\PyInstaller\depend\analysis.py", line 387, in _safe_import_module return super()._safe_import_module(module_basename, module_name, parent_package) File "C:\Users\adam\PycharmProjects\alpha\venv\lib\site-packages\PyInstaller\lib\modulegraph\modulegraph.py", line 2062, in _safe_import_module self._process_imports(n) File "C:\Users\adam\PycharmProjects\alpha\venv\lib\site-packages\PyInstaller\lib\modulegraph\modulegraph.py", line 2850, in _process_imports target_module = self._safe_import_hook(*import_info, **kwargs)[0] File "C:\Users\adam\PycharmProjects\alpha\venv\lib\site-packages\PyInstaller\lib\modulegraph\modulegraph.py", line 2510, in _safe_import_hook self.import_hook( File "C:\Users\adam\PycharmProjects\alpha\venv\lib\site-packages\PyInstaller\lib\modulegraph\modulegraph.py", line 1544, in import_hook for target_submodule in self._import_importable_package_submodules( File "C:\Users\adam\PycharmProjects\alpha\venv\lib\site-packages\PyInstaller\lib\modulegraph\modulegraph.py", line 1794, in _import_importable_package_submodules submodule = self._safe_import_module( File "C:\Users\adam\PycharmProjects\alpha\venv\lib\site-packages\PyInstaller\depend\analysis.py", line 387, in _safe_import_module return super()._safe_import_module(module_basename, module_name, parent_package) File "C:\Users\adam\PycharmProjects\alpha\venv\lib\site-packages\PyInstaller\lib\modulegraph\modulegraph.py", line 2062, in _safe_import_module self._process_imports(n) File "C:\Users\adam\PycharmProjects\alpha\venv\lib\site-packages\PyInstaller\lib\modulegraph\modulegraph.py", line 2850, in _process_imports target_module = self._safe_import_hook(*import_info, **kwargs)[0] File "C:\Users\adam\PycharmProjects\alpha\venv\lib\site-packages\PyInstaller\lib\modulegraph\modulegraph.py", line 2301, in _safe_import_hook target_modules = self.import_hook( File "C:\Users\adam\PycharmProjects\alpha\venv\lib\site-packages\PyInstaller\lib\modulegraph\modulegraph.py", line 1505, in import_hook target_package, target_module_partname = self._find_head_package( File "C:\Users\adam\PycharmProjects\alpha\venv\lib\site-packages\PyInstaller\lib\modulegraph\modulegraph.py", line 1684, in _find_head_package target_package = self._safe_import_module( File "C:\Users\adam\PycharmProjects\alpha\venv\lib\site-packages\PyInstaller\depend\analysis.py", line 387, in _safe_import_module return super()._safe_import_module(module_basename, module_name, parent_package) File "C:\Users\adam\PycharmProjects\alpha\venv\lib\site-packages\PyInstaller\lib\modulegraph\modulegraph.py", line 2062, in _safe_import_module self._process_imports(n) File "C:\Users\adam\PycharmProjects\alpha\venv\lib\site-packages\PyInstaller\lib\modulegraph\modulegraph.py", line 2850, in _process_imports target_module = self._safe_import_hook(*import_info, **kwargs)[0] File "C:\Users\adam\PycharmProjects\alpha\venv\lib\site-packages\PyInstaller\lib\modulegraph\modulegraph.py", line 2301, in _safe_import_hook target_modules = self.import_hook( File "C:\Users\adam\PycharmProjects\alpha\venv\lib\site-packages\PyInstaller\lib\modulegraph\modulegraph.py", line 1505, in import_hook target_package, target_module_partname = self._find_head_package( File "C:\Users\adam\PycharmProjects\alpha\venv\lib\site-packages\PyInstaller\lib\modulegraph\modulegraph.py", line 1684, in _find_head_package target_package = self._safe_import_module( File "C:\Users\adam\PycharmProjects\alpha\venv\lib\site-packages\PyInstaller\depend\analysis.py", line 387, in _safe_import_module return super()._safe_import_module(module_basename, module_name, parent_package) File "C:\Users\adam\PycharmProjects\alpha\venv\lib\site-packages\PyInstaller\lib\modulegraph\modulegraph.py", line 2062, in _safe_import_module self._process_imports(n) File "C:\Users\adam\PycharmProjects\alpha\venv\lib\site-packages\PyInstaller\lib\modulegraph\modulegraph.py", line 2850, in _process_imports target_module = self._safe_import_hook(*import_info, **kwargs)[0] File "C:\Users\adam\PycharmProjects\alpha\venv\lib\site-packages\PyInstaller\lib\modulegraph\modulegraph.py", line 2301, in _safe_import_hook target_modules = self.import_hook( File "C:\Users\adam\PycharmProjects\alpha\venv\lib\site-packages\PyInstaller\lib\modulegraph\modulegraph.py", line 1518, in import_hook submodule = self._safe_import_module(head, mname, submodule) File "C:\Users\adam\PycharmProjects\alpha\venv\lib\site-packages\PyInstaller\depend\analysis.py", line 387, in _safe_import_module return super()._safe_import_module(module_basename, module_name, parent_package) File "C:\Users\adam\PycharmProjects\alpha\venv\lib\site-packages\PyInstaller\lib\modulegraph\modulegraph.py", line 2061, in _safe_import_module n = self._scan_code(module, co, co_ast) File "C:\Users\adam\PycharmProjects\alpha\venv\lib\site-packages\PyInstaller\lib\modulegraph\modulegraph.py", line 2645, in _scan_code self._scan_bytecode( File "C:\Users\adam\PycharmProjects\alpha\venv\lib\site-packages\PyInstaller\lib\modulegraph\modulegraph.py", line 2749, in _scan_bytecode for inst in util.iterate_instructions(module_code_object): File "C:\Users\adam\PycharmProjects\alpha\venv\lib\site-packages\PyInstaller\lib\modulegraph\util.py", line 139, in iterate_instructions yield from get_instructions(code_object) File "C:\Users\adam\AppData\Local\Programs\Python\Python310\lib\dis.py", line 338, in _get_instructions_bytes argval, argrepr = _get_const_info(arg, constants) File "C:\Users\adam\AppData\Local\Programs\Python\Python310\lib\dis.py", line 292, in _get_const_info argval = const_list[const_index] IndexError: tuple index out of range
Reply
#4
Tried bokeh instead of matlibplot. Runs ok in the IDE. But cannot compile it as an exe. Same error messages.

Read that plot and ggplot use matlibplot and thus no point in trying them.

Does bokeh also use matlibplot?

Any other package I can try?

Thanks.
Reply
#5
The code you show runs for me (linux):

Output:
$ python src/Dec_5_2021_1.py    
try from command window (start virtual environment first if using one)
try pip list or pip3 list
Make sure all dependencies are present
also see: https://hub.gke2.mybinder.org/user/bokeh...etup.ipynb for some examples of bokeh.
Reply
#6
(Dec-05-2021, 08:41 PM)Larz60+ Wrote: The code you show runs for me (linux):

Output:
$ python src/Dec_5_2021_1.py
try from command window (start virtual environment first if using one)
try pip list or pip3 list
Make sure all dependencies are present
also see: https://hub.gke2.mybinder.org/user/bokeh...etup.ipynb for some examples of bokeh.
Many thanks! Will try and see. I am about to give up after trying this and that. Sad
Reply
#7
(Dec-05-2021, 08:41 PM)Larz60+ Wrote: The code you show runs for me (linux):
*** Using an interpreter or as an exe file? I can run it in Pycharm but cannot compile it as an exe using pyinstaller.

Output:
$ python src/Dec_5_2021_1.py
try from command window (start virtual environment first if using one)
try pip list or pip3 list
Make sure all dependencies are present
*** I assume the dependency for the graphing program is just matplotlib. Right? I am new to Python. I am using matplotlib 3.5.0

also see: https://hub.gke2.mybinder.org/user/bokeh...etup.ipynb for some examples of bokeh.
*** Broken link. Cannot open it.

Thanks.
Reply
#8
Appreciate feedback from those who have compiled a graphing program into an exe successfully.

Like to know which package (matplotlib, bokeh etc), version and the compiler name (if not pyinstaller) and version.

Then I may try using the same configuration for my program.

Thanks.
Reply


Possibly Related Threads…
Thread Author Replies Views Last Post
  how do i compile from pyjet import without a compile error? space_cat 0 1,293 Sep-22-2020, 01:57 PM
Last Post: space_cat

Forum Jump:

User Panel Messages

Announcements
Announcement #1 8/1/2020
Announcement #2 8/2/2020
Announcement #3 8/6/2020