Plotly画十年气温柱状图
时间: 2023-06-29 10:17:47 浏览: 58
要用Plotly画十年气温柱状图,可以使用Plotly Express库。下面是一个简单的示例代码:
```python
import plotly.express as px
import pandas as pd
# 导入数据
df = pd.read_csv("temperature_data.csv")
# 转换日期格式
df["Date"] = pd.to_datetime(df["Date"])
# 提取年份信息
df["Year"] = df["Date"].dt.year
# 计算每个年份的平均气温
mean_temps = df.groupby("Year").mean()["Temperature"]
# 绘制气温变化图
fig = px.bar(mean_temps, x=mean_temps.index, y="Temperature", color="Temperature",
color_continuous_scale=px.colors.sequential.Viridis_r,
title="十年气温变化图")
fig.update_layout(xaxis_title="年份", yaxis_title="平均气温")
fig.show()
```
这段代码会从CSV文件中读取气温数据,计算每个年份的平均气温,并绘制十年的气温变化图。你可以根据需要调整数据和图表参数,以得到你想要的效果。注意,这里使用了Viridis_r颜色映射,你可以根据需要选择其他的颜色映射。
相关问题
Plotly画一个动态柱状图
好的,以下是一个使用Plotly绘制动态柱状图的示例代码:
```python
import plotly.express as px
import pandas as pd
import time
# 创建一个数据框
df = pd.DataFrame({
'x': ['A', 'B', 'C', 'D'],
'y': [3, 2, 4, 1]
})
# 创建一个图形对象
fig = px.bar(df, x='x', y='y')
# 循环更新数据并更新图形
while True:
# 更新数据
df['y'] = df['y'] + 1
# 更新图形
fig.data[0].y = df['y']
fig.update_layout(title='Dynamic Bar Chart')
# 显示图形
fig.show()
# 等待1秒钟
time.sleep(1)
```
这个示例代码创建了一个简单的数据框,其中包含x和y列。然后,它使用Plotly Express创建一个静态的柱状图。接下来,使用一个无限循环来更新数据和图形,每次更新y值并使用`fig.data[0].y`更新图形的y值。最后,使用`fig.show()`显示图形,并使用`time.sleep(1)`暂停1秒钟,以便可以看到动态效果。
plotly画stacked柱状图
要绘制 Plotly 中的堆叠柱状图,你可以使用 `Bar` 对象,并设置 `barmode` 为 `'stack'`。下面是一个示例代码:
```python
import plotly.graph_objects as go
x = [1, 2, 3, 4, 5]
y1 = [1, 3, 2, 4, 3]
y2 = [2, 1, 4, 2, 3]
y3 = [3, 2, 1, 4, 2]
fig = go.Figure()
fig.add_trace(go.Bar(x=x, y=y1, name='Category 1'))
fig.add_trace(go.Bar(x=x, y=y2, name='Category 2'))
fig.add_trace(go.Bar(x=x, y=y3, name='Category 3'))
fig.update_layout(barmode='stack')
fig.show()
```
在这个示例中,我们创建了一个空的 `Figure` 对象,并使用 `add_trace()` 方法添加了三个堆叠的柱状图。每个柱状图都通过指定 `x` 和 `y` 数据来定义。
最后,我们使用 `update_layout()` 方法将 `barmode` 设置为 `'stack'`,以实现堆叠效果。
希望这个示例能帮助到你!如果还有其他问题,请随时提问。