如何使用python在一个条形图上绘制来自两个数据集的天气数据?
这里是Python新手。我正在查看一年中几个城市的每日天气数据。我感兴趣的是在柱状图中比较两个城市之间的日平均温度,这样我可以看到(例如)西雅图的平均温度与凤凰城相比是75度(或30度或100度) 我想要一个条形图,在x轴上有并排的温度条,在y轴上有计数。我已经能够用这些数据分别得到每个城市的条形图,但不知道如何在同一条形图上得到两个城市,每个城市的颜色不同。看起来应该很简单,但我几个小时的搜索还没有得到一个好的答案 建议,哦,明智的导师 以下是到目前为止我得到的信息:如何使用python在一个条形图上绘制来自两个数据集的天气数据?,python,pandas,data-visualization,visualization,Python,Pandas,Data Visualization,Visualization,这里是Python新手。我正在查看一年中几个城市的每日天气数据。我感兴趣的是在柱状图中比较两个城市之间的日平均温度,这样我可以看到(例如)西雅图的平均温度与凤凰城相比是75度(或30度或100度) 我想要一个条形图,在x轴上有并排的温度条,在y轴上有计数。我已经能够用这些数据分别得到每个城市的条形图,但不知道如何在同一条形图上得到两个城市,每个城市的颜色不同。看起来应该很简单,但我几个小时的搜索还没有得到一个好的答案 建议,哦,明智的导师 以下是到目前为止我得到的信息: import panda
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
%matplotlib inline
df = pd.read_csv("KSEA.csv")
df2 = pd.read_csv("KPHX.csv")
df["actual_mean_temp"].value_counts(sort=False).plot(kind ="bar")
df2["actual_mean_temp"].value_counts(sort = False).plot(kind = 'bar')
您可以
concat
DataFrames,将城市指定为列,然后在seaborn
中使用histplot
:
import seaborn as sns
z = pd.concat([
df[['actual_mean_temp']].assign(city='KSEA'),
df2[['actual_mean_temp']].assign(city='KPHX'),
])
ax = sns.histplot(data=z, x='actual_mean_temp', hue='city',
multiple='dodge', binwidth=1)
输出:
这些CSV文件的内容将有助于测试可能的解决方案。这将使绘制温度分布图变得非常容易。使用条形图时,这种图形的叠加效果不好。改用KDE或共享X轴的子地块。Henry Ecker,文件在这里:哇,谢谢,这太棒了!你能告诉我一些你是怎么知道的吗?我希望自己能更好地解决这些问题,除了在谷歌上搜索答案外,我不知道该怎么做,这个选择对我来说并不太好。你得到这个答案/代码的过程是什么?@cyong Withseaborn
plots具体来说,我想你可以看看他们的答案/代码。这是一种快速简单的方法,可以很好地理解如何使用它,每个示例下都有代码,因此您还可以了解如何使用它。我发现它很有用。他们也很好