欢迎访问宙启技术站
智能推送

Python数据可视化:绘制柱状图显示不同城市的温度变化

发布时间:2023-12-04 22:11:35

在Python中进行数据可视化,可以使用许多库,如matplotlib、seaborn等。本例中,我们将使用matplotlib库来绘制柱状图,展示不同城市的温度变化。

首先,我们需要收集数据。假设我们有一组包含不同城市的温度数据。数据可以从各种来源获得,如气象站、数据集等。为了简单起见,我们可以使用一个包含几个城市的虚拟数据集。

temperatures = {
    '北京': [10, 12, 15, 18, 20],
    '上海': [12, 15, 16, 18, 20],
    '深圳': [20, 22, 24, 26, 28]
}

接下来,我们需要导入matplotlib库来进行绘图。

import matplotlib.pyplot as plt

为了使图表更加美观,我们可以选择一个样式。

plt.style.use('ggplot')

然后,我们可以创建一个新的图形,并设置x坐标轴标签和y坐标轴标签。

fig, ax = plt.subplots()
ax.set_xlabel('城市')
ax.set_ylabel('温度 (摄氏度)')

接下来,我们需要为每个城市创建一个柱状图。

for city, temps in temperatures.items():
    x = range(len(temps))
    ax.bar(x, temps, label=city)

注意,我们使用range(len(temps))来生成一个范围,以便将每个柱子放置在正确的位置上。

最后,我们可以添加一个图例,并显示图表。

ax.legend()
plt.show()

完整的代码如下:

import matplotlib.pyplot as plt

temperatures = {
    '北京': [10, 12, 15, 18, 20],
    '上海': [12, 15, 16, 18, 20],
    '深圳': [20, 22, 24, 26, 28]
}

plt.style.use('ggplot')

fig, ax = plt.subplots()
ax.set_xlabel('城市')
ax.set_ylabel('温度 (摄氏度)')

for city, temps in temperatures.items():
    x = range(len(temps))
    ax.bar(x, temps, label=city)

ax.legend()
plt.show()

运行代码,我们将看到一个具有不同颜色柱子的柱状图,表示不同城市的温度变化。x轴表示城市,y轴表示温度。你可以根据需要自定义图表的样式,例如添加标题、调整颜色、更改柱子的宽度等。

除了柱状图,matplotlib还提供了其他种类的图表,如线图、散点图、箱型图等。你可以根据需要使用不同的图表来展示数据。