首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >一个循环中的多个图- Python

一个循环中的多个图- Python
EN

Stack Overflow用户
提问于 2015-02-03 20:02:16
回答 1查看 8.9K关注 0票数 0

我的程序生成两个数组,其中一个在X轴上绘制,另一个在Y轴上绘制(后者从矩阵的行中提取)。

问题是,我必须多次重复这个操作(我正在运行一个循环),但是所有的图都应该在同一个图上。每一次点都应该是不同的颜色。那我应该保存文件。

我试过了

代码语言:javascript
运行
复制
for row in range(6):
    plt.plot(betaArray, WabArray[row], 'ro')
    plt.show()

但这只显示每一次迭代的一幅图,而且总是相同的颜色。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-02-04 08:31:39

你可以试试这样的方法:

代码语言:javascript
运行
复制
import numpy as np
import matplotlib.pylab as plt
import matplotlib as mpl

x = [1,2,3,4]
y_mat = np.array([[1,2,3,4], [5,6,7,8]])

n, _ = y_mat.shape

colors = mpl.cm.rainbow(np.linspace(0, 1, n))
fig, ax = plt.subplots()
for color, y in zip(colors, y_mat):
    ax.scatter(x, y, color=color)
plt.show()

这将从n颜色映射创建rainbow颜色,并使用scatter绘制相应颜色中的点。您可能希望切换到不同的颜色地图,甚至手动选择颜色。

其结果是:

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28307697

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档