【原生淘宝客源码】【足球源码模板】【公司门户源码】echartsgauge源码

时间:2024-11-23 13:26:23 来源:tfidf计算源码 分类:焦点

1.数据可视化—pyecharts的源码使用
2.ECharts常见图表配置
3.pyecharts 安装及图形绘制

echartsgauge源码

数据可视化—pyecharts的使用

       本文将介绍数据可视化工具 pyecharts 的使用方法,以及如何在 Python 中生成各种图表。源码pyecharts 是源码一个用于生成 Echarts 图表的类库,主要应用于数据可视化。源码

       pyecharts 提供了丰富的源码图表类型,包括但不限于:柱状图(Bar)、源码原生淘宝客源码3D 柱状图(Bar3D)、源码箱形图(Boxplot)、源码带有涟漪特效动画的源码散点图(EffectScatter)、漏斗图(Funnel)、源码仪表盘(Gauge)、源码地理坐标系(Geo)、源码关系图(Graph)、源码热力图(HeatMap)、源码K线图(Kline)、源码折线/面积图(Line)、3D 折线图(Line3D)、水球图(Liquid)、地图(Map)、足球源码模板平行坐标系(Parallel)、饼图(Pie)、极坐标系(Polar)、雷达图(Radar)、桑基图(Sankey)、散点图(Scatter)、3D 散点图(Scatter3D)、主题河流图(ThemeRiver)和词云图(WordCloud)。

       用户可以通过 Grid、公司门户源码Overlap 和 Page 类来管理图表的布局和展示方式,其中 Grid 类用于并行显示多张图,Overlap 类用于结合不同类型图表叠加画在同张图上,Page 类用于在同一网页按顺序展示多图,Timeline 类则提供时间线轮播多张图的功能。

       要使用 pyecharts,可以通过命令行工具 pip 安装所需包:

       pip install pyecharts

       对于全球国家地图、中国省级地图和中国市级地图,分别可以通过以下命令安装:

       pip install echarts-countries-pypkg

       pip install echarts-china-provinces-pypkg

       pip install echarts-china-cities-pypkg

       在使用 pyecharts 时,ghost源码编译一些基础函数如 add()、show_config() 和 render() 非常重要。add() 方法用于添加图表的数据和配置项,show_config() 方法用于打印输出图表的所有配置项,render() 方法则用于生成 HTML 文件。

       对于中文支持问题,建议使用文本编辑器如 Visual Studio Code,通过 Gbk 编码打开文件,然后用 UTF-8 编码保存,蓝客源码避免中文乱码。

       下面是一些基本图表使用实例:

       Bar(柱状图/条形图):使用 Bar.add() 方法添加数据和配置项。

       Pie(饼图/环形图):使用 Pie.add() 方法添加数据和配置项。

       WordCloud(词云图):使用 WordCloud.add() 方法添加数据和配置项。

       Geo(地理坐标系):使用 Geo.add() 方法添加数据和配置项。

       Line(折线/面积图):使用 Line.add() 方法添加数据和配置项。

       Scatter(散点图):使用 Scatter.add() 方法添加数据和配置项。

       Overlap(图标叠加):使用 Overlap.add() 方法添加数据和配置项,实现不同图表的叠加。

       以上内容提供了 pyecharts 的基础使用方法和一些进阶功能,帮助开发者更高效地进行数据可视化。

ECharts常见图表配置

       用过很多次ECharts图表,每次用的时候都要查文档,也想过进行记录,总是忙于手头工作或者因为惰性没有落实到文章,这次痛定思痛趁着假期记录下,以下代码基于echarts5.0.0版本,出于偷懒,直接copy的项目代码,简单做了调整,可以直接放到ECharts对应示例使用,注释应该是够用的,有问题欢迎留言讨论。

横向柱状图//坐标轴文字样式constYDataTextStyle={ color:"#C1E0F9",fontSize:,align:"right",fontFamily:"PingFangSC-Regular",};option={ grid:{ top:,left:,bottom:,right:,},xAxis:{ type:"value",show:false,},yAxis:{ //坐标轴线axisLine:{ show:false,},//坐标轴刻度axisTick:{ show:false,},//坐标轴数据data:[{ value:"走访宣传",textStyle:YDataTextStyle},{ value:"安全隐患",textStyle:YDataTextStyle},{ value:"疫情防控",textStyle:YDataTextStyle},{ value:"市容环境",textStyle:YDataTextStyle},{ value:"出租屋管理",textStyle:YDataTextStyle},{ value:"社会秩序",textStyle:YDataTextStyle},{ value:"公共服务",textStyle:YDataTextStyle},{ value:"拆迁纠纷",textStyle:YDataTextStyle},],},series:[{ //类型type:"bar",//数据data:[,,,,,,,],//柱子宽度barWidth:,//顶部文字label:{ show:true,position:"right",valueAnimation:true,fontFamily:"youse",fontSize:,color:"#A8DAFC",//{ a}:系列名{ b}:数据名{ c}:数据值formatter:"{ c}",//距离图形距离distance:,},//是否显示柱子背景色showBackground:true,//柱子背景色样式backgroundStyle:{ color:"rgba(,,,.)",},//柱子样式itemStyle:{ //边框borderColor:"#B1F8",borderWidth:0.2,//颜色color:{ type:"linear",x:0,y:0,x2:1,y2:0,//渐变色colorStops:[{ offset:0,color:"rgba(,,,0.)",//0%处的颜色},{ offset:1,color:"rgba(,,,0.)",//%处的颜色},],},},},],};

       效果如下:

纵向柱状图option={ grid:{ top:,left:,bottom:,right:,},legend:{ bottom:5,data:["热线电话","巡查上报"],textStyle:{ fontFamily:"PingFangSC-Regular",fontSize:,color:"#fff",},},xAxis:[{ type:"category",axisTick:{ show:false,},axisLabel:{ color:"#C1E0F9",fontSize:,fontFamily:"PingFangSC-Regular",},data:["5月","6月","7月","8月","9月","月"],},],yAxis:[{ type:"value",position:"left",axisLine:{ show:false,//横坐标线lineStyle:{ color:"#9EACC1",opacity:0.1,},},axisLabel:{ color:"#AC",fontSize:,fontFamily:"PingFangSC-Regular",},axisTick:{ show:false,},//水平分隔线样式splitLine:{ lineStyle:{ color:"#9EACC1",opacity:0.1,},},},],series:[{ name:"热线电话",type:"bar",data:[,,,,,],//多个并排柱子设置柱子之间的间距barGap:"%",//柱子宽度barWidth:,//顶部文字label:{ show:true,position:"top",valueAnimation:true,fontFamily:"Akrobat-Black",fontSize:,color:"#DDBC",formatter:"{ c}",//距离图形距离distance:5,},//柱子样式itemStyle:{ //边框borderColor:"#E2B4",borderWidth:0.2,//颜色color:{ type:"linear",x:0,y:0,x2:0,y2:1,colorStops:[{ offset:0,color:"rgba(0,,,0.4)",//底部颜色},{ offset:1,color:"rgba(,,,0.)",//顶部颜色},],},},},{ type:"line",data:[,,,,,],lineStyle:{ opacity:0,},showSymbol:true,//顶点偏移symbolOffset:[-,0],//设定为实心点symbol:"circle",//设定实心点的大小symbolSize:5,//设定实线点的颜色color:"#DDBC",},{ name:"巡查上报",type:"bar",data:[,,,,,],//多个并排柱子设置柱子之间的间距barGap:"%",//柱子宽度barWidth:,//顶部文字label:{ show:true,position:"top",valueAnimation:true,fontFamily:"Akrobat-Black",fontSize:,color:"#FFBB",formatter:"{ c}",//距离图形距离distance:5,},//柱子样式itemStyle:{ //边框borderColor:"#FFBB",borderWidth:0.2,//颜色color:{ type:"linear",x:0,y:0,x2:0,y2:1,colorStops:[{ offset:0,color:"rgba(,,,0.)",//底部颜色},{ offset:1,color:"rgba(,,,0.)",//顶部颜色},],},},},{ type:"line",data:[,,,,,],lineStyle:{ opacity:0,},showSymbol:true,//顶点偏移symbolOffset:[,0],//设定为实心点symbol:"circle",//设定实心点的大小symbolSize:5,//设定实线点的颜色color:"#FFBB",},],};

       效果如下:

环形图//色值数组constcolors=['#B1FF','#DDBC','#CA','#FFBB','#EA5B','#FF'],//chart饼图色值数组colorsForChart=[],//数据数组data=[.2,.6,.6,9.6,.8,.2],//chart饼图数据数组dataForChart=[];//设计图饼图之间有间隙,所以数据之间添加固定间隙数值,颜色之间添加tranparent做饼图间隙//注:这里只是一个思路,不适合照搬colors.forEach((item,index)=>{ colorsForChart.push(item,'transparent');dataForChart.push(data[index],1.5);});colors.forEach((item,index)=>{ colorsForChart.push(item,'transparent');dataForChart.push(data[index],1.5);});option={ series:[{ type:'pie',radius:['%','%'],color:colorsForChart,label:{ show:false},data:dataForChart}]};

       效果如下:

仪表盘option={ series:[{ type:"gauge",//仪表盘半径radius:"%",//最小的数据值min:0,//最大的数据值max:,//仪表盘起始角度startAngle:,//仪表盘结束角度endAngle:-,//仪表盘指针样式这里用来设置仪表盘色值itemStyle:{ color:"#DDBC",},//进度条progress:{ show:true,width:3,},//仪表盘轴线axisLine:{ lineStyle:{ width:3,color:[[1,"#B"]],},},//刻度样式axisTick:{ show:false,},//分隔线样式splitLine:{ show:false,},//刻度标签axisLabel:{ show:false,},//标题title:{ show:false,},//仪表盘详情,用于显示数据detail:{ //中心偏移量offsetCenter:[0,0],//中心文字样式textStyle:{ color:"#DDBC",fontSize:},},//仪表盘指针pointer:{ show:false,},//表盘中指针的固定点anchor:{ show:false,},//系列中的数据内容数组data:[{ value:,},],},],};

       效果如下:

pyecharts 安装及图形绘制

       安装pyecharts

       pip install pyecharts

       学习手册

       /intro love.

       图表实例:

       gallery.pyecharts.org/#...

       首先认识图表框架,好查对应的配置参数。

       全局配置项可通过set_global_opts 方法设置

       InitOpts:初始化配置项 #init_opts=

       ToolBoxFeatureSaveAsImagesOpts:工具箱保存配置项

       ToolBoxFeatureRestoreOpts:工具箱还原配置项

       ToolBoxFeatureDataViewOpts:工具箱数据视图工具

       ToolBoxFeatureDataZoomOpts:工具箱区域缩放配置项

       ToolBoxFeatureMagicTypeOpts:工具箱动态类型切换配置项

       ToolBoxFeatureBrushOpts:工具箱选框组件配置项

       ToolBoxFeatureOpts:工具箱工具配置项

       ToolboxOpts:工具箱配置项

       toolbox_opts=opts.ToolboxOpts(

       is_show=True,#手册中要求值时布尔型。

       orient="horizontal",#参数为字符型,horizontal水平

       pos_left="right",

       pos_top="%",#手册中参数为字符型。

       )

       toolbox_opts=opts.ToolboxOpts(

       is_show=True,

       orient="vertical",

       pos_left="right",

       pos_top="5%",

       )

       BrushOpts:区域选择组件配置项

       TitleOpts:标题配置项

       DataZoomOpts:区域缩放配置项

       Line()

       .set_global_opts(

       datazoom_opts=opts.DataZoomOpts(

       is_show=True,

       type_="slider",

       is_realtime=True,

       ),

       )#手册中的标题使用时标题全部小写,与opts之间用“_”线连接。如“ datazoom_opts=”,书写要正确,否则会报错。所以配置以此类推。

       LegendOpts:图例配置项#legend_opts=

       VisualMapOpts:视觉映射配置项 #visualmap_opts=

       TooltipOpts:提示框配置项

       line()

       .set_global_opts(

       tooltip_opts=opts.TooltipOpts(is_show=True,trigger_on="mousemove|click"),

       )#

       AxisLineOpts: 坐标轴轴线配置项

       AxisTickOpts: 坐标轴刻度配置项

       AxisPointerOpts: 坐标轴指示器配置项

       AxisOpts:坐标轴配置项

       SingleAxisOpts:单轴配置项

       GraphicGroup:原生图形元素组件

       代码:

       import pandas as pd

       import numpy as np

       from pyecharts import options as opts

       from pyecharts.charts import Line

       f=pd.read_excel("F:\\数据分析2\\Excel培训\\数据源.xlsx",sheet_name="Sheet1",usecols=["订单日期","订单数量"])#读取Excel数据,只读取"订单日期","订单数量",两列

       # print(f.describe())#显示统计描述

       # date=f.groupby("订单日期")["订单数量"].sum()

       d=f.groupby("订单日期").agg({ "订单数量":"sum"})#按日期,对订单进行求和。

       # print( d.info())

       print(d)

       # print(d["订单数量"])

       x_data =d.index#设置x轴数值

       y_data =d["订单数量"]#设置y轴数值

       (

       Line()#申明绘制折线图

       #设置全局参数:

       .set_global_opts(

       tooltip_opts=opts.TooltipOpts(is_show=True,trigger_on="mousemove|click"),

       xaxis_opts=opts.AxisOpts(type_="category"),

       yaxis_opts=opts.AxisOpts(

       type_="value",

       axistick_opts=opts.AxisTickOpts(is_show=True),

       splitline_opts=opts.SplitLineOpts(is_show=True),

       ),

       title_opts=opts.TitleOpts(

       title="订单趋势",

       title_link="",

       title_target="blank",

       pos_top="top",

       pos_left="middle",

       ),

       legend_opts=opts.LegendOpts(pos_left="right"),

       datazoom_opts=opts.DataZoomOpts(

       is_show=True,

       type_="slider",

       is_realtime=True,

       ),

       toolbox_opts=opts.ToolboxOpts(

       is_show=True,

       orient="vertical",

       pos_left="right",

       pos_top="5%",

       ),

       )

       .add_xaxis(xaxis_data=x_data)

       .add_yaxis(

       series_name="订单数",

       y_axis=y_data,

       symbol="emptyCircle",

       is_symbol_show=True,

       label_opts=opts.LabelOpts(is_show=True),

       markpoint_opts=opts.MarkPointOpts(

       data=[

       opts.MarkPointItem(type_="max",name="最大值"),

       opts.MarkPointItem(type_="min",name="最小值"),

       ]),#MarkPointOpts:标记点配置项

       markline_opts=opts.MarkLineOpts(

       data=[opts.MarkLineItem(type_="average", name="平均值")]

       ),#MarkLineOpts:标记线配置项

       )

       .render("basic_line_chart.html")

       )

       导入其他图形:

       from pyecharts.charts import Bar

       from pyecharts.charts import Pie

       导入时首字母大写,其他小写

       class _ChartType:

       BAR: str = "bar"

       BAR3D: str = "bar3D"

       BOXPLOT: str = "boxplot"

       EFFECT_SCATTER: str = "effectScatter"

       FUNNEL: str = "funnel"

       GAUGE: str = "gauge"

       GEO: str = "geo"

       GRAPH: str = "graph"

       HEATMAP: str = "heatmap"

       KLINE: str = "candlestick"

       LINE: str = "line"

       LINE3D: str = "line3D"

       LINES: str = "lines"

       LINES3D: str = "lines3D"

       LIQUID: str = "liquidFill"

       MAP: str = "map"

       MAP3D: str = "map3D"

       PARALLEL: str = "parallel"

       PICTORIALBAR: str = "pictorialBar"

       PIE: str = "pie"

       POLAR: str = "polar"

       RADAR: str = "radar"

       SANKEY: str = "sankey"

       SCATTER: str = "scatter"

       SCATTER3D: str = "scatter3D"

       SUNBURST: str = "sunburst"

       THEMERIVER: str = "themeRiver"

       TREE: str = "tree"

       TREEMAP: str = "treemap"

       WORDCLOUD: str = "wordCloud"

       CUSTOM: str = "custom"