echarts系列
echarts
pyecharts
官网:https://pyecharts.org/#/zh-cn/global_options?id=axisopts:坐标轴配置项
全局配置
参考文档:
https://blog.csdn.net/weixin_74727170/article/details/147280651?spm=1001.2014.3001.5502
样式类
InitOpts
图的宽高;主题颜色(浅色/深色);背景颜色
ToolBoxFeatureOpts和ToolboxOpts
用于配置工具箱中特定功能项的行为和外观,例如数据缩放、保存为图片、数据视图等。
ToolboxOpts 控制:工具箱整体的 显示与位置。
is_show:是否显示;orient:横排 or 竖排;pos_top, pos_right:位置;
ToolBoxFeatureOpts 控制:每个具体按钮的显示与行为。
saveAsImage:保存为图片;dataView:查看原始数据;restore:还原初始视图;dataZoom:图表局部缩放;magicType:图表类型切换;每个按钮都可以分别设置 is_show、是否只读、显示方式等。

TitleOpts
负责设计主标题、副标题的内容、样式、位置和交互,决定观众第一眼的印象。

DataZoomOpts
图表的“滑动放大镜”,让你能聚焦看细节、拖动看全貌,是处理“数据太多”的利器。DataZoomOpts 就像是在图表底下加了一个“滑动放大镜”,可以放大局部细节,或者在长数据中左右拖动浏览。当你图表数据很多,密密麻麻一大堆时,不可能一下子全看清楚。这时候就需要“拉近看看”——这就是 DataZoomOpts 的用武之地。

LegendOpts
图表“图例栏的设计师”,帮你决定图例长什么样、放哪儿、怎么选、怎么展示。
控制图例显示,控制图例在图表中的位置,设置图例的排列方向(水平或垂直),自定义图例样式(设置图例文本的字体、颜色、大小等样式),控制图例的选择模式(单选、多选或关闭)。





VisualMapOpts
就是让图表“看起来就懂”,通过颜色或大小把数据的高低、分布趋势一眼展现出来,增强可视化直觉。
VisualMapOpts 就像是在图表上加了一把“调色刷”,它根据数据的大小自动帮你“上色”或“变形”。



TooltipOpts
是图表中专门“弹出解释内容”的小助手,它能在鼠标悬停时清楚地告诉你每个数据点的含义。
Tooltip 就像图表里的“小气泡说明书”,当你把鼠标移到某个柱子、点、区域时,它会自动弹出来告诉你这个点的详细信息,是图表的“即时讲解员”。

坐标轴类
区别:

AxisLineOpts
坐标轴“主干线”的外观设计师,决定这条轴线是否出现、以什么颜色和样式呈现,是图表风格的重要组成。
AxisLineOpts 就像是图表上“坐标轴的主线装饰条”,决定那条粗粗的 X 轴或 Y 轴线是否出现、长什么样子、颜色如何。
你可以用它来控制:那条线要不要显示;是实线?虚线?点线?粗一点还是细一点?什么颜色?

AxisTickOpts
就是“坐标轴刻度的设计师”,决定图表中那一根根小短线怎么出现,长什么样子,是否辅助视觉对齐数据。
AxisTickOpts 就是“图表坐标轴上的小短线”的控制器,决定这些小刻度线是否显示、长多长、粗细和颜色。这些小短线就像你用尺子时看到的刻度 —— 它们不会显示数据本身,但帮助你看清楚数据间隔和精度。

AxisPointerOpts
是图表中的“激光笔线条”,用来精确指示鼠标指向的坐标位置,帮助用户更快定位数据点和趋势。
AxisPointerOpts 就像是图表里的“激光指针”,当你把鼠标移到图上时,它会在坐标轴上显示一条线或阴影,告诉你现在关注的是哪一组数据。
AxisOpts
是图表中坐标轴“从内容到样式”的全面配置器,决定你看到的轴线、刻度、文字、单位和轴类型怎么呈现。
AxisOpts 就是“坐标轴的总设计师”,专门负责控制坐标轴长什么样、叫什么名、标不标刻度、字怎么写、线怎么画。

SingleAxisOpts
SingleAxisOpts 是“单条轴图”的定制工具,决定这条坐标轴长什么样、叫什么、放哪儿、标什么、怎么显示。
SingleAxisOpts 就是用来配置“只有一条坐标轴”的图表,比如时间轴、极简图或日历图里的一维轴。
“单轴图”只有一个方向的轴线,你可以用它来控制这条轴的:类型(类目、数值、时间等)名称、名称位置轴线样式(粗细、颜色)标签样式(字体大小、颜色、旋转角度)位置(上下左右居中 or 靠边)

原生图形配置类
区别和关系图:



GraphicGroup
GraphicGroup 是 ECharts 中用于组合多个图形元素的容器。
GraphicGroup 就像一个可以装图形的“移动画布”,你可以把多个图形装进去,一起控制它们。
透明的收纳盒,里面可以放很多不同的小东西,比如文字、图形、图片、线条等。把这些东西装进去以后,可以一起移动它们、调整大小、设置颜色,甚至让它们整体一起响应鼠标拖动等交互操作。这比你单独操作每一个图形要方便得多,因为你可以一次性控制整个“盒子”里的所有元素。

GraphicItem
GraphicItem是ECharts中的一个图形元素,它可以用于绘制多种形状、色彩、大小的图形。可以用于在ECharts图表中添加图形特效,例如点状的粒子效果、路径动画、涟漪效果或者指示标记等。
GraphicItem 就是图表上的“自定义小贴图、小动画、小标签”,让图表更有表现力和互动性。
GraphicItem 就像是一块画布上的“单个图形”——比如一根线、一个圆、一个小图标、一个字、甚至一段动画。如果把整个图表比作一张大画布,那 GraphicItem 就像是你往上贴的小贴纸、小图案、小标签、小箭头、小动画等。它们是图表的“额外装饰”,不一定是数据本身,而是“增强视觉效果”的图形。你可以控制它的形状(圆、方、线、路径等),大小、颜色、位置,甚至让它动起来。

GraphicBasicStyleOpts
GraphicBasicStyleOpts 就像是“图形的化妆包”或“穿衣搭配表”。你用 GraphicItem 画了一个图形,比如一个圆、一个矩形、一个文字,但还没说它是什么颜色、边框粗细、是否透明、有没有阴影……这些都由 GraphicBasicStyleOpts 来决定。

GraphicShapeOpts

GraphicImage
GraphicImage 就是图表上的“定制图片贴纸”,你可以任意贴图、调位置、调大小,还能让它动起来、点起来、跳链接。
GraphicImage 就像是在图表上“贴一张你想要的图片”,可以放公司 logo、二维码、人物头像,甚至是一张产品照片。它就像在图上“贴一张贴纸”,这张贴纸可以自定义位置、大小、旋转角度,甚至点一下还能跳转网页,或触发动画、事件等。

GraphicImageStyleOpts
给图片“定妆”的说明卡,告诉图表系统这张图片的长什么样、放哪儿、多大、透明度多少、要不要旋转等等。它不负责“图形长什么样”(那是 shape 决定的),而是负责图片如何呈现出来,比如外观、效果和交互样式。

GraphicText
GraphicText 就像是在图表上“贴便签条”或“打字说明”的工具。GraphicText 就是在图表上添加“自定义文字”的万能工具,用来注释、提示、强调、引导都很合适,就像你给图表贴了可自由编辑的文字标签。
你可以用它在任何地方加上一段文字,不受图表默认元素限制,而且能设置颜色、字体、大小、对齐方式,甚至让它变成一个“能点击”的文字按钮。
你做了一张图表贴在墙上,比如“某公司年度销售趋势图”,你想补充说明一下,于是你可能会做这些事:在图的右上角贴张便利贴:“这个是 Q4 的冲刺成果”;在图下方写一个说明:“蓝色柱代表去年,红色柱代表今年”;在图左上角手写“单位:万元”;点一个文字“点击这里查看详情”然后打开网页;这些补充用的文字,就相当于图表中的 GraphicText。

GraphicTextStyleOpts
GraphicTextStyleOpts 就是图表中控制文字“穿什么衣服”的组件,用来设置它好不好看、漂不漂亮、清不清楚、重不重要。
GraphicTextStyleOpts 就像是给文字“美妆打扮”的工具箱,控制这段文字看起来“好不好看”。它不负责你写什么文字(那是 text 决定的),但负责这段文字怎么展示出来,比如:是什么字体?(宋体、微软雅黑、Arial 等)多大?(12px 还是 20px)什么颜色?(红色、蓝色、渐变)是否加粗、倾斜?阴影有没有?居中还是左对齐?

GraphicRect
GraphicRect 就是在图表上加一个“自定义矩形贴纸”,你可以控制它的大小、颜色、边框,还能让它动起来或互动。
GraphicRect 就是你在图表上画的一个“自定义长方形”,你可以指定它的大小、颜色、位置、边框,还能让它动、变色、点一下跳链接。就像是一块彩色的“贴纸”,你可以把它贴在图的任何角落,用来突出某个区域、添加背景块、遮挡区域,或者当按钮来点。

局部配置
参考文档:
https://blog.csdn.net/weixin_74727170/article/details/148127929?spm=1001.2014.3001.5502
样式类配置项
ItemStyleOpts
ItemStyleOpts 就像是“给图表上的每一个元素穿衣打扮的设计师”。
每个图表上的柱子、点、线条,就像是舞台上的演员。你可以用 ItemStyleOpts 来决定他们穿什么颜色的衣服、有没有边框、影子多浓、是不是透明等等

TextStyleOpts
给文字选衣服+化妆+排姿势的造型师。它决定了图表中所有文字(比如标题、坐标轴名称、数值标签):穿什么颜色的衣服(字体颜色)多大个子(字体大小)是不是加粗(字体粗细)是不是斜体(姿势)居中/靠左/靠右(站的对齐方式)

LabelOpts
逛超市:每个水果区的牌子上都写了价格、重量,那就是标签;有的标在水果上方(上方显示),有的在下边(下方显示),有的干脆不显示(不显示标签);字体大一点,看起来更清楚;红字标注表示打折(字体颜色);这些牌子的样式控制,就是 LabelOpts 干的事。

LineStyleOpts
在图表里,每一条线就像是一位“出场的模特”,而 LineStyleOpts 就是决定:这条线是粗的还是细的(线宽)是直线还是虚线(线型)穿什么颜色的衣服(线的颜色)

SplitLineOpts
专门用来设置图表中坐标轴上的分隔线(也叫网格线)的样式的配置项。

标记类
MarkPointItem和MarkPointOpts
在图表中,MarkPointItem 是“一个个插的点”,而 MarkPointOpts 是“控制这些点整体风格”的配置总开关。
MarkPointItem → “在哪插旗子、为什么插”
MarkPointOpts → “这些旗子长什么样、怎么显示”

from pyecharts.charts import Line
from pyecharts import options as opts
# 创建折线图
line = (
Line()
.add_xaxis(["周一", "周二", "周三", "周四", "周五"])
.add_yaxis(
"温度",
[10, 15, 8, 20, 13],
markpoint_opts=opts.MarkPointOpts(
symbol="circle", # 标记点形状
symbol_size=60, # 标记点大小
label_opts=opts.LabelOpts(color="black"), # 标签文字颜色
data=[
opts.MarkPointItem(type_="max", name="最高温"),
opts.MarkPointItem(type_="min", name="最低温")
]
)
)
.set_global_opts(
title_opts=opts.TitleOpts(title="一周温度趋势图")
)
)
# 渲染图表为 HTML 文件
line.render("markpoint_fixed.html")
MarkLineItem和MarkLineOpts
MarkLineItem 就像是在图表上“拉一根线”,用来强调一个趋势、位置或边界。你在白板上用红笔画一条直线,表示“平均水平”;你用尺子连接两个点,表示“发展趋势”;你用一条虚线标出“目标线”或者“安全线”;这些“线”,就是 MarkLineItem 做的事。
MarkLineOpts是一种用于标记线条的配置项。它可以通过一些参数来控制线条的样式、起始位置、终止位置以及标签等属性。
MarkLineItem 决定画哪条线,MarkLineOpts 决定这些线怎么画。

from pyecharts.charts import Line
from pyecharts import options as opts
x_data = ["一月", "二月", "三月", "四月", "五月"]
y_data = [120, 132, 101, 134, 90]
line = (
Line()
.add_xaxis(x_data)
.add_yaxis(
"销售额",
y_data,
markline_opts=opts.MarkLineOpts(
data=[
opts.MarkLineItem(type_="average", name="平均值") # 自动绘制平均值线
],
linestyle_opts=opts.LineStyleOpts(
color="red", type_="dashed", width=2
),
label_opts=opts.LabelOpts(
color="red", font_weight="bold"
)
)
)
.set_global_opts(title_opts=opts.TitleOpts(title="销售趋势图"))
)
line.render("marklineopts_example.html")
MarkAreaOpts和MarkAreaItem
MarkAreaItem 就像是“在图表上铺一块高亮地毯”——让你一眼看出“哪里很重要”。它不是点,不是一条线,而是一块“连续的区域”;你可以标出:“从3月到5月这段时间”、“温度高于40℃的区域”;非常适合用于高亮重点时段、波动区、节假日、危险区等。
MarkAreaOpts 管理所有“区域便利贴”;设置它们的颜色、透明度、样式;把它们准确贴在坐标轴上;

from pyecharts.charts import Line
from pyecharts import options as opts
line = (
Line()
.add_xaxis(["1月", "2月", "3月", "4月", "5月", "6月"])
.add_yaxis(
"销售额",
[100, 120, 90, 150, 130, 110],
markarea_opts=opts.MarkAreaOpts(
data=[
# 区域1:促销期(2月~3月)
[{"xAxis": "2月"}, {"xAxis": "3月"}],
# 区域2:节后回落期(5月~6月)
[{"xAxis": "5月"}, {"xAxis": "6月"}]
],
itemstyle_opts=opts.ItemStyleOpts(
color="rgba(144, 238, 144, 0.3)" # 淡绿色
)
)
)
.set_global_opts(title_opts=opts.TitleOpts(title="销售趋势图(含多段区域标记)"))
)
line.render("markareaopts_example.html")
其他类
EffectOpts
EffectOpts 是“让你的数据点跳起来、闪起来、扩散开”的特效控制器,用于在图表中吸引用户注意力,让静态图更生动。
EffectOpts 就像是“给图表点加上涟漪动画和节奏感”的魔法调音台。它不会改变数据本身,而是让图表更有动感、更有存在感;通常用于地图上的流动路径、动态轨迹图、涟漪点(比如出发地、中心城市);能控制“涟漪的大小、速度、播放方式、是否重复”等动画效果;

from pyecharts.charts import Geo
from pyecharts import options as opts
from pyecharts.globals import ChartType
geo = (
Geo()
.add_schema(maptype="china")
.add(
"中心城市",
[("北京", 1)],
type_=ChartType.EFFECT_SCATTER, # 启用涟漪散点图
effect_opts=opts.EffectOpts(
scale=5, # 涟漪大小
period=4, # 动画周期(秒数越小越快)
color="red", # 涟漪颜色
symbol="circle" # 涟漪形状
),
label_opts=opts.LabelOpts(is_show=False)
)
.set_global_opts(title_opts=opts.TitleOpts(title="北京涟漪中心图"))
)
geo.render("effectopts_demo.html")
AreaStyleOpts
AreaStyleOpts 是“让你在线条下方铺一层好看的颜色区域”的配置项,能让图表更有“层次感”和“体积感”。
用于设置图表下方填充区域样式的配置项,尤其适用于 折线图(Line)和雷达图(Radar) 等类型。
AreaStyleOpts 就像是给“线下面涂颜色”的那支画笔。当你画出一条折线,如果你希望它下面的区域也被填满,就像“涂了一层颜色”一样,你就需要用 AreaStyleOpts 来控制:这层颜色是什么?透明还是不透明?要不要边框?要不要阴影?

from pyecharts.charts import Line
from pyecharts import options as opts
line = (
Line()
.add_xaxis(["1月", "2月", "3月", "4月", "5月"])
.add_yaxis(
"访问量",
[100, 200, 150, 300, 250],
is_smooth=True,
areastyle_opts=opts.AreaStyleOpts(
color="rgba(135, 206, 250, 0.4)", # 淡蓝色,带透明
opacity=0.5, # 整体透明度(0-1)
)
)
.set_global_opts(title_opts=opts.TitleOpts(title="网站访问趋势图"))
)
line.render("areastyle_example.html")
SplitAreaOpts
是让图表坐标区域看起来像“分块背景”的配置项,它能提升图表的对齐性、可读性与美观性。
用于设置坐标轴背景分隔区域的配置项,它能让图表的坐标轴区域像“格子纸”一样呈现分块背景,提升可读性。
SplitAreaOpts 就像是“给坐标轴画斑马线”的工具。它不会影响数据,只是让坐标轴区域的背景一块一块交错显示。
像考试成绩单背景的“格子表”,每两行学生信息用不同底色交替显示,方便老师快速找到某个学生的成绩。

from pyecharts.charts import Line
from pyecharts import options as opts
line = (
Line()
.add_xaxis(["周一", "周二", "周三", "周四", "周五", "周六", "周日"])
.add_yaxis("示例数据", [120, 132, 101, 134, 90, 230, 210])
.set_global_opts(
title_opts=opts.TitleOpts(title="折线图示例 - SplitArea交错背景"),
yaxis_opts=opts.AxisOpts(
splitline_opts=opts.SplitLineOpts(is_show=True),
splitarea_opts=opts.SplitAreaOpts(is_show=True),
axisline_opts=opts.AxisLineOpts(is_show=True),
)
)
)
# 手动修改交错色,需要使用 overwrite
line.options["yAxis"][0]["splitArea"] = {
"show": True,
"areaStyle": {
"color": ["#00ffff", "#ffffff"] # 交错背景色
}
}
line.render("split_area_fixed_2.0.8.html")

浙公网安备 33010602011771号