如何为 python 中的每个数据生成单独的散点图?
How to produce separate scatter plots for each data in python?
我有列表列表,其中每个列表表示为一个特征向量:
Matrix=[[12,43,65,78,54,43,76,98],
[23,465,90,9,32,75,324,12],
[67,43,21,56,32,7,4,9],
[3,9,0,67,23,12,65,97]]
我还有另一个特征向量作为fvector:
fvector=[54,76,12,55,88,75,32,3]
我想分别用 fvector 为矩阵的每个列表绘制散点图,但是当我尝试通过遍历每个列表进行绘图时,它会绘制在同一张图上:
我试过这个:
import matplotlib.pyplot as plt
for i in Matrix:
plt.scatter(i,fvector)
我得到的输出是:
但我想分别绘制每个矩阵图,是否可以绘制单独的小图?
任何参考或资源都会有所帮助。
谢谢
for i in Matrix:
plt.scatter(i,fvector)
plt.show()
应该做
您需要使用子图使用多个轴
fig, ax = plt.subplots(2)
情节看起来像这样:
axs[0].plot(x1, y)
axs[1].plot(x2, y)
您可以使用子图在同一张图上创建多个图。
for i, item in enumerate(Matrix,1):
plt.subplot(2, 2, i)
plt.scatter(item, fvector)
plt.show()
如果我们在矩阵中有四个以上的列表,那么我们可以将它们分成四个一组,并为每组 4 个列表生成单独的图形。请检查以下内容:
for j in range(0, len(Matrix), 4):
for i, item in enumerate(Matrix[j:j+4],1):
plt.subplot(2, 2, i)
plt.scatter(item, fvector)
plt.show()
希望对您有所帮助!!
我有列表列表,其中每个列表表示为一个特征向量:
Matrix=[[12,43,65,78,54,43,76,98],
[23,465,90,9,32,75,324,12],
[67,43,21,56,32,7,4,9],
[3,9,0,67,23,12,65,97]]
我还有另一个特征向量作为fvector:
fvector=[54,76,12,55,88,75,32,3]
我想分别用 fvector 为矩阵的每个列表绘制散点图,但是当我尝试通过遍历每个列表进行绘图时,它会绘制在同一张图上:
我试过这个:
import matplotlib.pyplot as plt
for i in Matrix:
plt.scatter(i,fvector)
我得到的输出是:
但我想分别绘制每个矩阵图,是否可以绘制单独的小图? 任何参考或资源都会有所帮助。
谢谢
for i in Matrix:
plt.scatter(i,fvector)
plt.show()
应该做
您需要使用子图使用多个轴
fig, ax = plt.subplots(2)
情节看起来像这样:
axs[0].plot(x1, y)
axs[1].plot(x2, y)
您可以使用子图在同一张图上创建多个图。
for i, item in enumerate(Matrix,1):
plt.subplot(2, 2, i)
plt.scatter(item, fvector)
plt.show()
如果我们在矩阵中有四个以上的列表,那么我们可以将它们分成四个一组,并为每组 4 个列表生成单独的图形。请检查以下内容:
for j in range(0, len(Matrix), 4):
for i, item in enumerate(Matrix[j:j+4],1):
plt.subplot(2, 2, i)
plt.scatter(item, fvector)
plt.show()
希望对您有所帮助!!