plotly绘图——折线图

介绍

plotly是一个易于使用,功能强大的python绘图库,用于构建可交互式的图表(可以自行运行后使用鼠标拖拽图片试试),本系列文章将介绍plotly绘制各种类型图的方法,本文将介绍——折线图

折现图

基础折线图

代码解释

  • df = px.data.gapminder().query("country=='Canada'")
    这一行代码首先调用px.data.gapminder()获取了一个内置的示例数据集gapminder,这个数据集包含了多个国家多年的经济和健康指标。然后,使用.query()方法对这个数据集进行筛选,只保留与加拿大相关的数据行。这里的查询语句"country==‘Canada’"意味着选择数据集中country列值为"Canada"的行。

  • fig = px.line(df, x="year", y="lifeExp", title='Life expectancy in Canada')
    这一行代码使用px.line()函数创建了一个折线图。df是之前筛选出的加拿大数据集,x="year"指定了横轴变量为year,即年份,y="lifeExp"指定了纵轴变量为lifeExp,即预期寿命。title='Life expectancy in Canada’为图表设置了标题,表明这个图表展示的是加拿大的预期寿命随时间的变化。

import plotly.express as px

df = px.data.gapminder().query("country=='Canada'")
fig = px.line(df, x="year", y="lifeExp", title='Life expectancy in Canada')
fig.show()

在这里插入图片描述

具有列编码颜色的线条图

代码解释

  • df = px.data.gapminder().query("continent=='Oceania'")
    这一行代码首先调用px.data.gapminder()获取了一个内置的示例数据集gapminder,这个数据集包含了多个国家多年的经济和健康指标。然后,使用.query()方法对这个数据集进行筛选,只保留与大洋洲相关的数据行。这里的查询语句"continent==‘Oceania’"意味着选择数据集中continent列值为"Oceania"的行,即筛选出大洋洲的国家。

  • fig = px.line(df, x="year", y="lifeExp", color='country')
    这一行代码使用px.line()函数创建了一个折线图。df是之前筛选出的大洋洲国家数据集,x="year"指定了横轴变量为year,即年份,y="lifeExp"指定了纵轴变量为lifeExp,即预期寿命。color='country’参数指定了图表中每条折线的颜色应该根据country列的值(即国家)来区分,这样在图表中可以清楚地看到每个国家的数据。

import plotly.express as px

df = px.data.gapminder().query("continent=='Oceania'")
fig = px.line(df, x="year", y="lifeExp", color='country')
fig.show()

在这里插入图片描述

折线图中的数据顺序

代码解释

  • 创建一个DataFrame:
    使用pd.DataFrame()函数创建一个新的DataFrame对象,其中包含两个列x和y,每列都有四个数据点。这些数据点是无序的,即x和y的值没有按照任何特定的顺序排列。
    创建第一个折线图:

  • 使用px.line()函数创建一个折线图,其中df是数据源,x="x"和y="y"分别指定了DataFrame中的x列和y列作为图表的横轴和纵轴数据。title="Unsorted Input"为图表设置了一个标题,表明这个图表展示的是未排序的输入数据。
    调用fig.show()方法显示这个折线图。这会导致图表在用户的默认浏览器中渲染和显示。
    对DataFrame进行排序:

  • 使用DataFrame的sort_values()方法按x列的值对DataFrame进行排序。by="x"参数指定了排序的列。排序后,x和y的值将按照x的升序排列。
    创建第二个折线图:

  • 再次使用px.line()函数创建一个新的折线图,这次使用排序后的DataFrame。同样地,x="x"和y="y"指定了图表的横轴和纵轴数据,而title="Sorted Input"设置了新标题,表明这个图表展示的是排序后的输入数据。
    调用fig.show()方法显示这个折线图。

import plotly.express as px
import pandas as pd

df = pd.DataFrame(dict(
    x = [1, 3, 2, 4],
    y = [1, 2, 3, 4]
))
fig = px.line(df, x="x", y="y", title="Unsorted Input") 
fig.show()

df = df.sort_values(by="x")
fig = px.line(df, x="x", y="y", title="Sorted Input") 
fig.show()

在这里插入图片描述

在这里插入图片描述

日期上的折线图

代码解释

  • df = px.data.stocks()
    这一行代码调用了plotly.express模块中的px.data.stocks()函数,这个函数返回了一个内置的数据集,其中包含了多个主要科技公司的股票价格历史数据。这个数据集通常是以Pandas DataFrame的形式提供的,其中包含了日期、公司名称和股票代码等信息,以及对应的股票价格数据。

  • fig = px.line(df, x='date', y="GOOG")
    这一行代码使用px.line()函数创建了一个折线图。df是之前获取的股票数据集。x='date’指定了横轴变量为date,即数据集中的日期列,代表了股票价格的时间点。y="GOOG"指定了纵轴变量为GOOG,即数据集中谷歌公司的股票价格列。这里,GOOG是谷歌公司的股票代码,我们通过这个代码来筛选出谷歌公司的股票价格数据,以便在图表中展示。

px.line()函数会根据指定的x和y参数,绘制出谷歌公司股票价格随日期变化的趋势线。由于这里没有指定其他参数,如颜色或线型,Plotly会使用默认的设置来渲染图表。

import plotly.express as px

df = px.data.stocks()
fig = px.line(df, x='date', y="GOOG")
fig.show()

在这里插入图片描述

  • 8
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值