python - matplotlib - 散点图,为 y 元组选择颜色

标签 python matplotlib scatter-plot

我是 Python 新手,我正在尝试创建一个散点图,显示每个 xtick 的多个 y 值。我发现这个问题帮助我想出了某种代码:Python Scatter Plot with Multiple Y values for each X .

x = [1,2,3,4]
y = [(1,1,2,3,9),(1,1,2,4), (0.5,4), (0.1,2)]

for xe, ye in zip(x, y):
    plt.scatter([xe] * len(ye), ye, color=['blue', 'red'])

plt.xticks([1, 2, 3, 4])
plt.axes().set_xticklabels(['5', '10', '15', '25'])
plt.ylim(0, 1)

plt.show()

问题是,例如,此代码交替以红色和蓝色打印第一个元组的点。但是,我喜欢用蓝色打印第一个元组(例如(1,1,2,3,9))的所有点,用红色打印下一个元组(例如(1,1,2,4))的所有点等等。有没有办法以这种方式指定颜色?我还没有遇到过类似的问题。

我真的很感谢任何提示或帮助!

最佳答案

使用itertools.cycle循环您的颜色,并将它们与循环中的元组一起压缩:

for (xe, ye), color in zip(zip(x, y), itertools.cycle(['blue', 'red'])):
    pyplot.scatter([xe] * len(ye), ye, color=color)

关于python - matplotlib - 散点图,为 y 元组选择颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44874945/

相关文章:

python - 为什么 Python Matplotlib 条形图的 X 轴刻度显示奇怪和错误的负值?

python - 如何删除 seaborn 的 lmplot 函数中的图例?

python - 绘制 95% 置信区间 errorbar python pandas dataframes

python - 如何删除 seaborn 散点图顶部和底部的空白

python - 修复 Bokeh 散点图中的轴间距(刻度)

python - 在python中解析一个特殊的xml

python - 获取支持 NA/可为空的 boolean pandas 列

python - 在 Python3 Pandas 中读取/导入 CSV 文件时出现编码问题

python - 更改多处理队列中的变量

Python matplotlib 叠加散点图