这是我的第一个 matplotlib 程序,如果这看起来是一个愚蠢的问题,请提前抱歉。
我正在尝试在 Arduino 和 Raspberry Pi 之间建立基本的串行连接。我打算从一些简单的事情开始,比如将数字从 RPI 发送到 Arduino 板,让它计算一些东西(在我的例子中将其平方)并发送回数字,以便 RPI 可以单独绘制值。
这是我的 Arduino 代码:
void setup(){
Serial.begin(9600);
}
void loop(){
if(Serial.available() > 0){
int inc = Serial.ParseInt();
inc = pow(inc,2);
Serial.println(inc);
}
}
这是我的 RPI 代码:
import serial
ser = serial.Serial('/dev/ttyACM0',9600)
import matplotlib.pyplot as plt
plt.axis([0,20,0,400])
plt.ion()
plt.show()
for i in range(20):
ser.write(str(i))
y=int(ser.readline())
plt.scatte([i],[y],'bo')
plt.draw()
循环中的一切似乎都工作得很好,但我不断收到一条错误消息,指出“类型错误:未为此类型实现”,指的是“plt.draw()”函数
任何帮助将不胜感激!
最佳答案
这是因为您正在调用 plt.scatter
,其中包含 'bo'
。
以上仅适用于 plt.plot
!! 即同时指定标记样式和颜色。
而对于plt.scatter
,您应该这样调用它:
plt.scatter([i],[y],c='b',marker='o')
这会起作用的!
关于python - '类型错误 : Not implemented for this type' when trying to make a Scatter plot in matplotlib,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31461093/