我正在使用bar()绘制2个数据系列,一个轴上的大多数绘图点在bar()的'left'参数方面是相同的,以便移动第二个数据系列,我在起点上添加了一些空间,但是这个添加导致了这个错误:
TypeError:只能将元组(不是“float”)连接到元组
以下是我的代码:
width = 0.5
genGraph, xyParts = p.subplots()
xPart = xyParts.bar(fFreqs, fVals, width, color='#758085')
yPart = xyParts.bar((oFreqs + width,), oVals, width, color='#C9FABE')
fFreqs和oFreqs是元组,它们作为'left'参数的参数,'width'是一个偏移量,用于移动oFreqs(第二个数据集)的起始点。我尝试了一个简单的连接,将'oFreqs'添加到'width'而没有括号和额外的逗号。
你能告诉我我做错了什么吗?感谢。答案 0 :(得分:0)
如果oFreqs
是一个元组,那么
(oFreqs + width,)
不会做你认为应该做的事情。添加两个元组只是将它们连接起来。如果要为元组的所有部分添加常量,则应使用numpy
数组(因为在使用numpy
时可以使用matplotlib
。尝试:
import numpy as np
...
yPart = xyParts.bar(np.array(oFreqs) + width, ...)
这会将元组转换为数组,然后按照人们的想法进行添加。