python - 绘制很多点让我的电脑死机
问题描述
我正在编写一个 python 脚本来绘制我生成的一些随机数据。我有一个包含我的数据的文件,当我加载它并尝试绘制它时,如果我尝试绘制超过 1000 个点,我的电脑将冻结并给出一个 matplotlib 错误(我会说哪个但它只是说错误一个对话框并要求我强制退出或等待,但大多数情况下单击任何内容都是不可能的),我被迫重新启动。我对 python 完全陌生,我需要这个脚本以高达 100'000 或 1'000'000 点运行,有没有更有效的方法?我不知道我做错了什么,但我希望我的电脑停止冻结,下面是我的代码
import pandas as pd
import numpy as np
import matplotlib as mpl
import matplotlib.pyplot as plt
File = open('RandomData.txt', 'r')
#File has 4 columns
Lines = File.readlines()
Data = [[],[],[],[]]
for I in range (0, 3):
for Line in Lines :
Data[I].append(Line.split()[I])
#Here I try to plot just the first set of random data, to see if it works
plt.plot(Data[0],Data[0])
plt.show()
plt.close()
任何建议将不胜感激,在此先感谢!
解决方案
正如@tom10 和 OP 所建议的那样,我将此作为答案以供进一步参考。
问题是列表包含str
而不是整数。铸造它们来int
解决问题。
推荐阅读
- css - 为样式创建指令是否会被视为反模式
- google-assistant-sdk - 使用本地 Google 和 Apple HomeKit SDK 的安全加入流程
- c# - FirstOrDefault 在整数列表上不返回 null
- angular - 如何使用 Jest 在 Angular 上测试 Angular 提交
- github - 如何让 Visual Studio (Mac) 满足 GitHub 令牌身份验证要求?
- python - Kivy 错误 - 找不到任何有价值的窗口提供程序
- java - 在 Android Studio 中创建对话框时出现上下文错误
- python - Flask 在本地工作,但不能在服务器上工作?
- python - 避免过多的“自我”。使用类方法时
- javascript - 如何将样式应用于 Vuejs 中的活动路由器链接