IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Python知识库 -> plotly绘制双y轴折线图并定制样式 -> 正文阅读

[Python知识库]plotly绘制双y轴折线图并定制样式

Background

  • 数据分析离不开数据的可视化。Python 中的可视化依赖库有很多非常优秀的可视化神器。例如较流行的有pandas,matplotlib,Seaborn、plotly和Altair等。
  • 经过简单对比,最终选用plotly来实现目前的可视化需求。附 plotly官方文档地址
  • 这里主要介绍下折线图的绘制与定制。

1、最终效果

是可交互式折线图。

在这里插入图片描述

2、源码

import plotly.graph_objects as go
import numpy as np
import pandas as pd


def fig_line(title, lx, dy):
    """绘制折线图
    :param title 标题
    :param lx x轴数据 []
    :param dy y轴数据 {fyt: [], syt: []}
    """
    if lx and dy:
        fyt = list(dy.keys())[0]
        syt = list(dy.keys())[1]
        line1 = go.Scatter(x=lx, y=dy[fyt], showlegend=True, line=dict(color='blue', width=1), connectgaps=True, mode='lines', opacity=0.9, name=fyt)
        line2 = go.Scatter(x=lx, y=dy[syt], showlegend=True, line=dict(color='red', width=1), connectgaps=True, mode='lines', opacity=0.9, name=syt, yaxis='y2')
        layout = go.Layout(
            # 设置标题
            # title=title,
            # 设置y轴label及范围
            yaxis=dict(title=fyt, range=[0, 2]),
            # 设置fig大小
            height=500,
            width=200,
            margin=dict(
                autoexpand=True,
                l=10,
                r=10,
                t=30,
                b=30,
            ),
            # 设置次y轴label及范围
            yaxis2=dict(title=syt, range=[0, 50], overlaying='y', side='right'),
            # 设置背景色
            # plot_bgcolor='gray',
            # 设置图例信息,x、y可以控制位置
            legend=dict(x=0.80, y=0.98, font=dict(size=12, color='black')))
        fig = go.Figure(data=[line1, line2], layout=layout)
        fig.show()


def main():
    """主函数"""
    lx = ['2022-01', '2022-02', '2022-03', '2022-04', '2022-05', '2022-06', '2022-07', '2022-08', '2022-09', '2022-10', '2022-11', '2022-12']
    y1 = [0.919, 0.888, 0.163, 0.995, 0.723, 0.192, 0.069, 0.803, 0.645, 0.527, 0.675, 0.419]
    y2 = [20, 18, 15, 2, 8, 39, 26, 19, 26, 40, 5, 5]
    dy = {'应力(MPa)': y1, '温度(℃)': y2}
    title = '应力随温度变化情况'
    fig_line(title, lx, dy)


if __name__ == '__main__':
    main()
  Python知识库 最新文章
Python中String模块
【Python】 14-CVS文件操作
python的panda库读写文件
使用Nordic的nrf52840实现蓝牙DFU过程
【Python学习记录】numpy数组用法整理
Python学习笔记
python字符串和列表
python如何从txt文件中解析出有效的数据
Python编程从入门到实践自学/3.1-3.2
python变量
上一篇文章      下一篇文章      查看所有文章
加:2022-04-18 17:36:49  更:2022-04-18 17:43:02 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/15 17:51:52-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码