AnyChart 开发 进阶篇

AnyChart 开发 进阶篇

  • AnyChart 开发 进阶篇
      • 摘要
    • Plotly
      • 简介
    • 主题定制
      • 获得Anychart 需要的JSON数据
      • 福利---黑色风格的Anychart layout JSON配置
    • AnyChart 基础Tools 配置
    • Mapbox 地图在Anychart中使用

摘要

Any Chart是一种动态加载数据和样式配置的一种图表。Any Chart 模块可以允许用户构建由Plotly.js提供的数据图类型。更多关于Plotly.js的开发使用在链接: link to Plotly。Any Chart作为一个基础开发部件单元,可以在Mendix Studio Pro的 官方开发平台的App Store 中下载。
本篇继: 如何使用Any Chart,对Anychart Widget高级开发进行介绍。
学习本篇前提条件:

  • 对AnyChart基础开发有一定认识和实践。(若不符合,请点击学习基础篇 如何使用Any
    Chart 进行学习)
  • 对JSON Data有一定基础。

Plotly

简介

Plotly.js是一种支持前端构建静态图,动态图,类似于Echart的一种低代码(Low_code)技术。目前广泛应用于机器学习(Machine Learning)和数据可视化。 Dash是由Plotly提供的一个高效的Python框架,主要针对网页应用的数据可视化。

Chart Studio 是Plotly.js提供,可以进行线上开发 chart的免费的线上版本的Dash。

主题定制

Anychart 是基于Plotly.js 开发的Mendix Studio Pro的widget。Anychart目前在Plotly.js的支持下多个style的主题配置选择。


这些主题来源于plotly.js的线上开发工具Chart Studio.可以通过在Chart Studio上进行主题选择和制作一些自定义的静态Chart。

获得Anychart 需要的JSON数据

首先在左下方找到save 按钮点击保存为public项目(private 收费)。
通过点击图示my files

然后找到刚刚保存的项目,鼠标方上边会出现 Editor和Viewer,点击Viewer

然后选择Python&R这里就有Anychart所需要的JSON数据了。把data和layout的数据分别放在相应Anychart配置数据上。就可以直接在你的Mendix Studio Pro项目的web上查看了。

福利—黑色风格的Anychart layout JSON配置

这里分享一个黑色风格的Anychart layout配置

// JSON Layout 黑色主题
{"title": {"text": "Click to enter Plot title"},"xaxis": {"type": "linear","range": [0.8746584699453552,3.1253415300546448],"autorange": true},"yaxis": {"type": "linear","range": [1.1544885177453028,12.845511482254697],"autorange": true},"ternary": {},"autosize": true,"template": {"data": {"bar": [{"type": "bar","marker": {"colorbar": {"ticks": "","outlinewidth": 0}}}],"table": [{"type": "table","cells": {"fill": {"color": "#506784"},"line": {"color": "rgb(17,17,17)"}},"header": {"fill": {"color": "#2a3f5f"},"line": {"color": "rgb(17,17,17)"}}}],"carpet": [{"type": "carpet","aaxis": {"gridcolor": "#506784","linecolor": "#506784","endlinecolor": "#A2B1C6","minorgridcolor": "#506784","startlinecolor": "#A2B1C6"},"baxis": {"gridcolor": "#506784","linecolor": "#506784","endlinecolor": "#A2B1C6","minorgridcolor": "#506784","startlinecolor": "#A2B1C6"}}],"mesh3d": [{"type": "mesh3d","colorbar": {"ticks": "","outlinewidth": 0}}],"contour": [{"type": "contour","colorbar": {"ticks": "","outlinewidth": 0},"autocolorscale": true}],"heatmap": [{"type": "heatmap","colorbar": {"ticks": "","outlinewidth": 0},"autocolorscale": true}],"scatter": [{"type": "scatter","marker": {"colorbar": {"ticks": "","outlinewidth": 0}}}],"surface": [{"type": "surface","colorbar": {"ticks": "","outlinewidth": 0}}],"heatmapgl": [{"type": "heatmapgl","colorbar": {"ticks": "","outlinewidth": 0}}],"histogram": [{"type": "histogram","marker": {"colorbar": {"ticks": "","outlinewidth": 0}}}],"parcoords": [{"line": {"colorbar": {"ticks": "","outlinewidth": 0}},"type": "parcoords"}],"scatter3d": [{"type": "scatter3d","marker": {"colorbar": {"ticks": "","outlinewidth": 0}}}],"scattergl": [{"type": "scattergl","marker": {"colorbar": {"ticks": "","outlinewidth": 0}}}],"choropleth": [{"type": "choropleth","colorbar": {"ticks": "","outlinewidth": 0}}],"scattergeo": [{"type": "scattergeo","marker": {"colorbar": {"ticks": "","outlinewidth": 0}}}],"histogram2d": [{"type": "histogram2d","colorbar": {"ticks": "","outlinewidth": 0},"autocolorscale": true}],"scatterpolar": [{"type": "scatterpolar","marker": {"colorbar": {"ticks": "","outlinewidth": 0}}}],"contourcarpet": [{"type": "contourcarpet","colorbar": {"ticks": "","outlinewidth": 0}}],"scattercarpet": [{"type": "scattercarpet","marker": {"colorbar": {"ticks": "","outlinewidth": 0}}}],"scattermapbox": [{"type": "scattermapbox","marker": {"colorbar": {"ticks": "","outlinewidth": 0}}}],"scatterpolargl": [{"type": "scatterpolargl","marker": {"colorbar": {"ticks": "","outlinewidth": 0}}}],"scatterternary": [{"type": "scatterternary","marker": {"colorbar": {"ticks": "","outlinewidth": 0}}}],"histogram2dcontour": [{"type": "histogram2dcontour","colorbar": {"ticks": "","outlinewidth": 0},"autocolorscale": true}]},"layout": {"geo": {"bgcolor": "rgb(17,17,17)","showland": true,"lakecolor": "rgb(17,17,17)","landcolor": "rgb(17,17,17)","showlakes": true,"subunitcolor": "#506784"},"font": {"color": "#f2f5fa"},"polar": {"bgcolor": "rgb(17,17,17)","radialaxis": {"ticks": "","gridcolor": "#506784","linecolor": "#506784"},"angularaxis": {"ticks": "","gridcolor": "#506784","linecolor": "#506784"}},"scene": {"xaxis": {"ticks": "","gridcolor": "#506784","gridwidth": 2,"linecolor": "#506784","zerolinecolor": "#C8D4E3","showbackground": true,"backgroundcolor": "rgb(17,17,17)"},"yaxis": {"ticks": "","gridcolor": "#506784","gridwidth": 2,"linecolor": "#506784","zerolinecolor": "#C8D4E3","showbackground": true,"backgroundcolor": "rgb(17,17,17)"},"zaxis": {"ticks": "","gridcolor": "#506784","gridwidth": 2,"linecolor": "#506784","zerolinecolor": "#C8D4E3","showbackground": true,"backgroundcolor": "rgb(17,17,17)"}},"title": {"x": 0.05},"xaxis": {"ticks": "","gridcolor": "#283442","linecolor": "#506784","automargin": true,"zerolinecolor": "#283442","zerolinewidth": 2},"yaxis": {"ticks": "","gridcolor": "#283442","linecolor": "#506784","automargin": true,"zerolinecolor": "#283442","zerolinewidth": 2},"ternary": {"aaxis": {"ticks": "","gridcolor": "#506784","linecolor": "#506784"},"baxis": {"ticks": "","gridcolor": "#506784","linecolor": "#506784"},"caxis": {"ticks": "","gridcolor": "#506784","linecolor": "#506784"},"bgcolor": "rgb(17,17,17)"},"colorway": ["#636efa","#EF553B","#00cc96","#ab63fa","#19d3f3","#e763fa","#fecb52","#ffa15a","#ff6692","#b6e880"],"hovermode": "closest","colorscale": {"diverging": [[0,"#8e0152"],[0.1,"#c51b7d"],[0.2,"#de77ae"],[0.3,"#f1b6da"],[0.4,"#fde0ef"],[0.5,"#f7f7f7"],[0.6,"#e6f5d0"],[0.7,"#b8e186"],[0.8,"#7fbc41"],[0.9,"#4d9221"],[1,"#276419"]],"sequential": [[0,"#0508b8"],[0.0893854748603352,"#1910d8"],[0.1787709497206704,"#3c19f0"],[0.2681564245810056,"#6b1cfb"],[0.3575418994413408,"#981cfd"],[0.44692737430167595,"#bf1cfd"],[0.5363128491620112,"#dd2bfd"],[0.6256983240223464,"#f246fe"],[0.7150837988826816,"#fc67fd"],[0.8044692737430168,"#fe88fc"],[0.8938547486033519,"#fea5fd"],[0.9832402234636871,"#febefe"],[1,"#fec3fe"]],"sequentialminus": [[0,"#0508b8"],[0.0893854748603352,"#1910d8"],[0.1787709497206704,"#3c19f0"],[0.2681564245810056,"#6b1cfb"],[0.3575418994413408,"#981cfd"],[0.44692737430167595,"#bf1cfd"],[0.5363128491620112,"#dd2bfd"],[0.6256983240223464,"#f246fe"],[0.7150837988826816,"#fc67fd"],[0.8044692737430168,"#fe88fc"],[0.8938547486033519,"#fea5fd"],[0.9832402234636871,"#febefe"],[1,"#fec3fe"]]},"plot_bgcolor": "rgb(17,17,17)","paper_bgcolor": "rgb(17,17,17)","shapedefaults": {"line": {"width": 0},"opacity": 0.4,"fillcolor": "#f2f5fa"},"sliderdefaults": {"bgcolor": "#C8D4E3","tickwidth": 0,"bordercolor": "rgb(17,17,17)","borderwidth": 1},"annotationdefaults": {"arrowhead": 0,"arrowcolor": "#f2f5fa","arrowwidth": 1},"updatemenudefaults": {"bgcolor": "#506784","borderwidth": 0}},"themeRef": "PLOTLY_DARK"}
}

AnyChart 基础Tools 配置

Anychart提供了 Chart的放大缩小,下载图片等功能,这个是可以在configuration options配置整体。一般大家配置一套完整的可以整体Copy应用。
完整的配置学习请访问:plotly-configuration.
AnyChart 基础Tools 展示示例:

示例configuration options配置:

{"displayModeBar": "hover","modeBarButtonsToRemove": ["select2d","zoom2d","pan2d","zoom2d","lasso2d","sendDataToCloud","hoverCompareCartesian","hoverClosestCartesian"],"displaylogo": false
}

Mapbox 地图在Anychart中使用

data部分配置

[{"type": "densitymapbox","locationmode": "usa-State"}
]

layout 部分配置使用mapbox,在style部分:
内建的 plotly.js 的mapbox 的style属性配置参数包括: open-street-map, white-bg, carto-positron, carto-darkmatter, stamen-terrain, stamen-toner, stamen-watercolor。 内建的Mapbox本身自带的style属性参数配置包括: basic, streets, outdoors, light, dark, satellite, satellite-streets。
具体可以参考 https://plotly.com/javascript/reference/layout/mapbox/#layout-mapbox

// layout 部分配置使用mapbox
{"mapbox": {"style": "open-street-map","zoom": 4.884981426895676,"pitch": 0,"center": {"lat": 30,"lon": 120},"bearing": 0},"margin": {"r": 0,"t": 0,"b": 0,"l": 0,"pad": 0},"showlegend": false,"xaxis": {"range": [-1,6],"autorange": true},"yaxis": {"range": [-1,4],"autorange": true},"autosize": true}

最关键的是需要配置Configuration中的mapboxAccessToken。

{"mapboxAccessToken": "pk.eyJ1IjoiY2hyaWRkeXAiLCJhIjoiY2lxMnVvdm5iMDA4dnhsbTQ5aHJzcGs0MyJ9.X9o_rzNLNesDxdra4neC_A"
}

AnyChart 开发 进阶篇相关推荐

  1. AnyChart 开发进阶篇 - 如何将静态图发挥到极致

    AnyChart 开发 进阶篇 AnyChart 开发 进阶篇 AnyChart 开发 进阶篇 Plotly 主题定制 AnyChart 基础Tools 配置 Mapbox 地图在Anychart中使 ...

  2. mysql 开发进阶篇系列 10 锁问题 (使用“索引或间隙锁”的锁冲突)

    1.使用"相同索引键值"的冲突 由于mysql 的行锁是针对索引加的锁,不是针对记录加的锁,所以虽然是访问不同行的记录,但如果是使用相同的索引键,是会出现锁冲突的.设计时要注意 例 ...

  3. mysql如果索引为uid间隙锁_mysql 开发进阶篇系列 10 锁问题 (使用“索引或间隙锁”的锁冲突)...

    1.使用"相同索引键值"的冲突 由于mysql 的行锁是针对索引加的锁,不是针对记录加的锁,所以虽然是访问不同行的记录,但如果是使用相同的索引键,是会出现锁冲突的.设计时要注意 例 ...

  4. 世嘉MD游戏开发进阶篇【三】:向量归一化的实现及应用

    向量归一化是非常有用的,游戏中经常能用到,就说大家都见过的,FC魂斗罗的敌人发射子弹就能用到了,敌人向玩家发射子弹首先要获取到向量,这个向量不能直接作为方向去用,必须要经过归一化处理才行,经过归一化处 ...

  5. css就近原则_「Web前端开发进阶篇」CSS优先级

    所谓CSS优先级,即是指CSS样式在浏览器中被解析的先后顺序.既然样式有优先级,那么就会有一个规则来约定这个优先级,而这个"规则"就是重点. [引言] 讲解完这篇CSS优先级的文章 ...

  6. mysql 开发进阶篇系列 41 mysql日志之慢查询日志

    一.概述 慢查询日志记录了所有的超过sql语句( 超时参数long_query_time单位 秒),获得表锁定的时间不算作执行时间.慢日志默认写入到参数datadir(数据目录)指定的路径下.默认文件 ...

  7. mysql 开发进阶篇系列 22 磁盘I/O问题(从linux操作系统上优化)

    1. 使用Symbolic Links分布I/O mysql的数据库名和表名是与文件系统的目录名和文件名对应的,默认情况下,创建的数据库和表都存放在参数datadir定义的目录下.如果不使用RAID或 ...

  8. mysql 开发进阶篇系列 32 工具篇(mysqladmin工具)

    一.概述 mysqladmin是一个执行管理操作的客户端程序.用来检要服务的配置和当前的状态,创建并删除数据库等.功能与mysql客户端类似,主要区别在于它更侧重于一些管理方面的功能. 1. 查找my ...

  9. mysql第三方工具binlog_mysql 开发进阶篇系列 33 工具篇(mysqlbinlog日志管理工具)

    一.概述 由于服务器生成的二进制日志文件以二进制格式保存,所以如果要想检查这些文件的文本格式,就会用到mysqlbinlog日志管理工具. mysqlbinlog的语法如下: mysqlbinlog ...

最新文章

  1. 【每日一学】复杂度分析
  2. 播放失败246106异常代码_web前端面试题:您能读懂的Promise源码实现(手写代码)...
  3. linux pmap命令,Linux pmap 命令用法详解-Linux命令大全(手册)
  4. 16、mybatis动态sql 批量插入
  5. python爬虫教程大全
  6. Redis Hash 类型操作及常用命令
  7. addrinfo 结构
  8. 《中学生可以这样学Python》84节配套微课免费观看地址
  9. markdown使用markdown-viewer生成目录_谷歌浏览器查看m文件
  10. 三星1万亿元重金下注,推动AI、5G、半导体等项目的研究
  11. c#ftp操作全解:创建删除目录,上传下载文件,删除移动文件,文件改名,文件目录查询
  12. GDK获得各种scale factor
  13. java语言没有保留结构和联合,java选择题判断题题库.doc
  14. 离技术很近,离生活很远
  15. 不用iTunes也能添加音乐到iPod
  16. 什么是ASP.NET
  17. 服务器机柜型号大全,标准机柜尺寸表
  18. h5压缩图片 亲测有效
  19. 《计算广告》读书笔记——第一章 在线广告综述
  20. 面试前端的简历的注意事项

热门文章

  1. java窗体实验报告总结_java实验报告-总结 - 图文
  2. 期望, 方差, 协方差,标准差
  3. 【生活】我不想我不想不想上班
  4. ANSYS Workbench
  5. cmd 显示tcp连接服务器,windows最大tcp连接数,windows查看tcp连接数
  6. 对自己团队项目的意见以及移动App需求分析
  7. gridlayout用法 java_java – 使用gridlayout添加按钮
  8. 走出寒冬:PC市场的创新与复苏
  9. wpf listbox的selectedItem绑定在mouseup前一直处于选中状态
  10. 利用AutoIt自动登录