假设我有三个数据集:

X = [1,2,3,4]
Y1 = [4,8,12,16]
Y2 = [1,4,9,16]

我可以用散点图表示:

from matplotlib import pyplot as plt
plt.scatter(X,Y1,color='red')
plt.scatter(X,Y2,color='blue')
plt.show()

10套怎么做呢?

我搜索了一下,可以找到任何与我要问的内容相关的信息.

Edit: clarifying (hopefully) my question

如果我多次调用scatter,我只能在每个scatter上设置相同的 colored颜色 .此外,我知道我可以手动设置 colored颜色 数组,但我相信有更好的方法来做到这一点.

如果这有帮助,我可以很容易地 for each 数据集分配一个唯一的编号.

推荐答案

我不知道你说的‘手动’是什么意思.您可以很容易地 Select colored颜色 映射表并制作 colored颜色 数组:

import numpy as np
import matplotlib.pyplot as plt
import matplotlib.cm as cm

x = np.arange(10)
ys = [i+x+(i*x)**2 for i in range(10)]

colors = cm.rainbow(np.linspace(0, 1, len(ys)))
for y, c in zip(ys, colors):
    plt.scatter(x, y, color=c)

Matplotlib graph with different colors

或者你可以用itertools.cycle来制作你自己的 colored颜色 循环器,指定你想要循环的 colored颜色 ,用next来得到你想要的 colored颜色 .例如,使用3种 colored颜色 :

import itertools

colors = itertools.cycle(["r", "b", "g"])
for y in ys:
    plt.scatter(x, y, color=next(colors))

Matplotlib graph with only 3 colors

想想看,也许不把zip和第一个一起使用也更干净:

colors = iter(cm.rainbow(np.linspace(0, 1, len(ys))))
for y in ys:
    plt.scatter(x, y, color=next(colors))

Python相关问答推荐

在有限数量的唯一字母的长字符串中,找到包含重复不超过k次的所有唯一字母的最长子字符串

使用pandas MultiIndex进行不连续 Select

来自ARIMA结果的模型方程

具有多个组的条形图的不同y标度

从单个列创建多个列并按pandas分组

使用imap-tools时错误,其邮箱地址包含域名中的非默认字符

Polars -转换为PL后无法计算熵.列表

更改Seaborn条形图中的x轴日期时间限制

根据网格和相机参数渲染深度

如何处理嵌套的SON?

Python会扔掉未使用的表情吗?

acme错误-Veritas错误:模块收件箱没有属性linear_util'

将整组数组拆分为最小值与最大值之和的子数组

如何使用html从excel中提取条件格式规则列表?

无法通过python-jira访问jira工作日志(log)中的 comments

我如何使法国在 map 中完全透明的代码?

当独立的网络调用不应该互相阻塞时,'

梯度下降:简化要素集的运行时间比原始要素集长

Pandas计数符合某些条件的特定列的数量

driver. find_element无法通过class_name找到元素'""