gpt4 book ai didi

python - 在 matplotlib 中使用标记绘制序数数据

转载 作者:行者123 更新时间:2023-11-30 23:09:51 24 4
gpt4 key购买 nike

我有一些数据,我有实验值和模拟值,如果没有引入新的定义(我不想这样做),这些数据并不是真正连续的,所以我希望在散点图中按顺序显示它每组有两个标记,然后在 X 轴上标记每组。

基本上我不知道如何使用 matplotlib 来做到这一点(我更愿意使用它来与我呈现其他数据的方式保持一致)。

数据示例如下:

1平方厘米: 0.501,0.505

1厘米圆: 0.450,0.448

1 厘米 X 2 厘米矩形: 0.665、0.641

最佳答案

我可能误解了这个问题,但听起来你想要的是这样的东西:

import matplotlib.pyplot as plt

# Using this layout to make the grouping clear
data = [('apples', [0.1, 0.25]),
('oranges', [0.6, 0.35]),
('pears', [0.1, 0.18]),
('bananas', [0.7, 0.98]),
('peaches', [0.6, 0.48])]

# Reorganize our data a bit
names = [item[0] for item in data]
predicted = [item[1][0] for item in data]
observed = [item[1][1] for item in data]

# It might make more sense to use a bar chart in this case.
# You could also use `ax.scatter` to plot the data instead of `ax.plot`
fig, ax = plt.subplots()
ax.plot(predicted, color='lightblue', marker='o', linestyle='none',
markersize=12, label='Predicted')
ax.plot(observed, color='red', marker='s', linestyle='none',
markersize=12, label='Observed')

ax.margins(0.05)
ax.set(xticks=range(len(names)), xticklabels=names, ylabel='Meaningless')
ax.legend(loc='best', numpoints=1)
ax.grid(axis='x')

plt.show()

enter image description here

关键部分是设置 xticks 和 xticklabels 以对应您的数据“组”。您可以通过其他几种方式绘制数据(例如条形图等),但使用 xticks/labels 在每种情况下都是相同的。

关于python - 在 matplotlib 中使用标记绘制序数数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30955032/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com