『Plotly实战指南』--绘图初体验
今天,打算通过绘制一个简单的散点图,来开启我们 Plotly 绘图的初次尝试。
本文目的不是介绍如何绘制散点图,而是通过散点图来介绍Plotly 绘图的基础步骤。
1. 绘制散点图:初探 Plotly
散点图是展示变量关系的基础图表,在Plotly中,绘制散点图非常简单。
以下是一个示例代码:
import plotly.express as px
# 准备数据
data = {
"x": [1, 2, 3, 4, 5],
"y": [2, 3, 5, 7, 11]
}
# 绘制散点图
fig = px.scatter(data, x="x", y="y", title="简单的散点图")
fig.show()
运行后,你会看到一个交互式散点图,数据点根据x和y的值准确定位。
当你移动鼠标到散点上时,它们还会弹出身份标签,显示精确的坐标值。
Plotly的交互性让数据探索变得更加灵活。

2. 数据点定位与呈现
在散点图中,数据点的位置由x和y值决定,代码中的字典data存储了这些值。
Plotly的px.scatter函数读取数据后,将点绘制在图中。
Plotly 的可视化不仅依赖数据准确性,还通过样式增强可读性和美观性。
例如,title参数为图表添加标题,交互性则让用户可以通过鼠标操作探索数据,如放大或查看数据点数值。
也就是说,使用Plotly来绘图,我们的重点只要放在自己的数据上就可以了,不用花费精力在图形的样式和交互上。
3. Plotly的幕后工作
上面的代码很简单,开头通过import plotly.express as px导入了Plotly的express模块。
express是Plotly的简洁易用的高层次接口,通过简单的函数调用即可生成图表。
绘制图表时,如果不需要深度的定制图表的显示,那么最常用的就是这个模块。
当我们简简单单导入import plotly.express as px时,Plotly其实已经做了:
- 加载核心引擎:导入
Plotly的JavaScript渲染引擎 - 建立翻译通道:创建
Python与WebGL之间的JSON通信协议 - 初始化画布:准备好交互式图表的渲染容器
当我们通过px.scatter绘制散点图时,它也自动帮我们处理了:
- 坐标轴的智能缩放
- 数据标签的自动生成
- 交互功能的默认配置
4. 绘图函数
使用Plotly的绘图函数,关键是准备数据,比如上面示例中,数据以字典形式存储,x和y键对应横纵坐标。
px.scatter函数通过这些键读取数据并绘制,当绘制不同的图形时(比如折线图,柱状图等等),重点关注不同的函数中,对数据格式的要求。
除了数据点,Plotly也提供其他丰富的参数选项,如颜色、大小、形状等,这些参数的灵活使用能让图表更符合需求。
比如上面的px.scatter函数,通过参数color可以设置不同点的颜色,通过size参数可以控制数据点的体积大小。
import pandas as pd
df = pd.DataFrame(
{
"x轴": [1, 3, 5],
"y轴": [2, 4, 6],
"分类": ["A", "B", "A"],
}
)
px.scatter(
df,
x="x轴",
y="y轴",
color="分类",
size="y轴",
hover_data=["x轴", "y轴"],
)

上面的示例,通过Y轴的数值来控制点的大小,通过分类的值来控制颜色的不同。
5. 总结
通过这次Plotly绘图的初次尝试,我们成功绘制了散点图,并深入了解了其工作原理和使用方法。
从数据点定位到可视化呈现,从导入库的原理到绘图参数的设置,Plotly 都展现了强大的功能和易用性。
无论是数据分析人员还是爱好者,Plotly 都是一个值得尝试的工具。
后续的文章将继续探索更多图表类型和高级功能,让数据呈现更加完美。
『Plotly实战指南』--绘图初体验的更多相关文章
- 『Numpy学习指南』Matplotlib绘图
数据生成: import numpy as np import matplotlib.pyplot as plt func = np.poly1d(np.array([,,,])) func1 = f ...
- 『Numpy学习指南』排序&索引&抽取函数介绍
排序: numpy.lexsort(): numpy.lexsort()是个排字典序函数,因为很有意思,感觉也蛮有用的,所以单独列出来讲一下: 强调一点,本函数只接受一个参数! import nump ...
- 【阿里云产品公测】以开发者角度看ACE服务『ACE应用构建指南』
作者:阿里云用户mr_wid ,z)NKt# @I6A9do 如果感觉该评测对您有所帮助, 欢迎投票给本文: UO<claV RsfTUb)< 投票标题: 28.[阿里云 ...
- Scala 深入浅出实战经典 第66讲:Scala并发编程实战初体验
王家林亲授<DT大数据梦工厂>大数据实战视频 Scala 深入浅出实战经典(1-87讲)完整视频.PPT.代码下载:百度云盘:http://pan.baidu.com/s/1c0noOt6 ...
- Python+Flask+Gunicorn 项目实战(一) 从零开始,写一个Markdown解析器 —— 初体验
(一)前言 在开始学习之前,你需要确保你对Python, JavaScript, HTML, Markdown语法有非常基础的了解.项目的源码你可以在 https://github.com/zhu-y ...
- 【全面解禁!真正的Expression Blend实战开发技巧】第七章 MVVM初体验-在DataGrid行末添加按钮
原文:[全面解禁!真正的Expression Blend实战开发技巧]第七章 MVVM初体验-在DataGrid行末添加按钮 博客更新较慢,先向各位读者说声抱歉.这一节讲解的依然是开发中经常遇到的一种 ...
- dubbo实战之一:准备和初体验
欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS ...
- Dubbo基础一之实战初体验
本以为写这个小作文没什么难度的,可是好像并不是.前段时间重心放在驾考科目二,就想着小作文科二考过了再写也不是事,因为都实战过了.今天想着写却发现脑袋里啥都想不起来了,得翻项目和笔记回忆一下.所以还是那 ...
- Flume 实战(1) -- 初体验
前言: Flume-ng是数据收集/聚合/传输的组件, Flume-ng抛弃了Flume OG原本繁重的zookeeper和Master, Collector, 其整体的架构更加的简洁和明了. 其基础 ...
- iOS AR技术初体验,使用EasyAR示例程序的小白指南
QQ前两天的传递火炬,是我第一次直接接触到AR.(虽然之前听同事说过,因为他喜欢玩游戏,PS.3DS等等都玩过,这个技术最开始就是从这里出现的).所以感觉很有趣,就想自己也试着搞一下玩玩...下面是我 ...
随机推荐
- 将现有的系统环境文件打包成Docker镜像文件
一.现有A系统Centos7操作: 备注:A系统里最好不安装Docker,否则会报错 卸载不必要软件包 yum remove -y iwl* *firmware* --exclude=kernel-f ...
- Qt通用方法及类库10
函数名 //获取保存的文件 static QString getSaveName(const QString &filter, QString defaultDir = QCoreApplic ...
- MCU命令
三D打印常用MCU命令 allocate_oids count=42 分配 42 个 OIDs,后续用于标识和管理不同的设备或组件 config_spi oid=0 pin=PD7 cs_active ...
- 今天记录一下vue更改时间格式的js
首先定义js文件,我这边定义为date.js,里面包含了增加零的处理 //date.jsexport function formatDate(date, fmt) { if (/(y+)/.test( ...
- Diary -「PKUSC 2022」浅谈一类 emo 文学在 OI 游记中的运用
我突然发现这是我第一次完成这样一篇游记-- 一篇记录了绝对意义上"爆炸"的游记. SC 的前几天,我被一些奇怪的理由说服停课.省选已经过去了吧,机房里除了我全是省队.不 ...
- unordered_map比map慢?
先说结论:unordered_map不维护键的顺序,因此不能按顺序访问元素,因此如果你需要遍历表时若选用unordered_map就肯定比map慢 1. 数据结构与底层实现 unordered_map ...
- C# 给当前程序创建桌面快捷方式
C# 给当前程序创建桌面快捷方式 //by wgscd //date 2024-10-22 using System; using System.Reflection; using System.IO ...
- neo4j存储数据-图数据库
1. 简介 本文主要介绍neo4j是如何将图数据保存在磁盘上的,采用的是什么存储方式.分析这种存储方式对进行图查询/遍历的影响. 2. 图数据库简介 生产环境中使用的图数据库主要有2种,分别是带标签的 ...
- python读取excel的文件
1.安装依赖包,并且导入 pip install xlrd import xlrd 2.打开文件 path = r"C:\Users\xiao\Desktop\服务体系.xls" ...
- 一个基于 Roslyn 和 AvalonEdit 的跨平台 C# 编辑器
前言 今天大姚给大家分享一个基于 Roslyn 和 AvalonEdit 开源.轻量.跨平台的 C# 编辑器:RoslynPad. Roslyn介绍 Roslyn是一个强大的.NET编译器实现,为C# ...