草庐IT

XCharts 属性解析,代码示例(十分钟上手XCharts)

小妖小锦 2023-11-09 原文

一款基于UGUI的功能强大、易用、参数可配置的数据可视化图表插件。支持折线图、柱状图、饼图、雷达图、散点图、热力图等常见图表。

XChart  作者主页 

XCharts GitHub地址 


不多逼逼,直接干货!!!

1.通用属性

 红色区域内的参数是所有图标公用的属性,我们从上到下依次解析:

1.Theme 主题设置

默认有三种主题风格 Defaule、Light、Dark,具体详情如下图 很多属性很常见。

主题设置效果的前提是在下面开启了对应的功能模块,建议在下面对应模块中进行对应功能的详细设置。

2.Setting 模块设置

Setting主要是可以设置 材质球来美化图表,没标注的地方,暂时还不知道具体在哪里展示,不影响图表。

3.Background 设置

设置很简单,设置时记得勾选

 

4 Title 设置

设置很简单,设置时记得勾选

 

5.Legend 图例设置

 

 6.Tooltip 提示框设置

 

 

2.适用于带有 X、Y 轴的图表的功能模块

1.DataZoom 滑动区域设置

勾选后可以通过 鼠标滑动来控制图标移动。可以调整滑动块的样式

 

 2.Visual Map 可视映射 (渐变颜色控制)

 

 

3.Grid 网格管理

坐标轴内的的网格部分 位置和背景颜色控制,可以控制坐标轴的宽高和背景颜色,如同下图 绿色部分:

 

4.XAxis 和 YAxis 轴 模块设置

可以自定义设置轴的样式和内容

 

Gird : 指定就是 图中 蓝绿部分

Spilt Line : 橙色

Tick :黄色

 

补充一下,轴常用的Value类型参数: 

 

3.数据添加设置及样式调整

通过Series可以对数据样式进行样式和类型调整,在Data是可以增删改查数据。

 

 

如果多条数据需要单独设置时,可以的勾选上面的参数,比如:添加两个Y轴,只要数据的index对应改数据轴时就可以设置。

 

4.代码的简单使用

可以获取改图表后,对具体参数进行调整。

   //获取该图表类后,即可对指定参数设置
        LineChart chart = GetComponent<LineChart>();
        string name1 = "test";
        string name2 = "test2";
        //设置标题,注意设置为显示状态
        chart.title.show = true;
        chart.title.text = "Line Text";
        //设置提示,注意设置为显示状态
        chart.tooltip.show = true;
        //显示图例注释
        chart.legend.show = true;
        chart.legend.data.Clear();
        chart.legend.data.Add(name1);
        chart.legend.data.Add(name2);
        /*图表默认有两个X轴和两个Y轴,默认显示一对xy*/
        //控制轴的显隐
        chart.xAxis0.show = true;
        chart.xAxis1.show = false;
        chart.yAxis0.show = true;
        chart.yAxis1.show = false;

        //x轴数据显示类型 
        chart.xAxis0.type = Axis.AxisType.Category;
        //x轴数据显示类型 
        chart.yAxis0.type = Axis.AxisType.Value;


        int[] data1 = { 10, 20, 30, 10, 50 };
        int[] data2 = { 50, 60, 10, 50, 10 };

        //x轴显示的区域数
        chart.xAxis0.splitNumber = data1.Length;

        //添加之前先清除默认的表的数据
        chart.RemoveData();

        //根据主题类,对轴的Style进行调整
        //文字颜色
        chart.theme.axis.textColor = Color.white;
        //轴的颜色
        chart.theme.axis.lineColor = Color.white;
        //分割线颜色
        chart.theme.axis.splitLineColor = Color.white;

        //添加X轴数据
        for (int i = 0; i < data1.Length; i++)
        {
            chart.AddXAxisData(i.ToString());
        }

        //创建该数据表 1  获取当前系列,可对系列线标类型就行调整
        Serie serie = chart.AddSerie(SerieType.Line, name1);
        //关键点图像是否显示
        serie.symbol.show = true;
        //关键点的样式调整
        serie.symbol.type = SerieSymbolType.Circle;
        //当前折线的风格调整
        serie.lineStyle.show = true;
        //当前折线的透明度
        serie.lineStyle.opacity = 1;
        //创建该数据表 2
        chart.AddSerie(SerieType.Line, name2);

        //添加数据
        foreach (int i in data1)
        {
            chart.AddData(name1, i);
        }

        foreach (int i in data2)
        {
            chart.AddData(name2, i);
        }

自己一个人研究的,如有错误欢迎指正。

访问跳转:

有关XCharts 属性解析,代码示例(十分钟上手XCharts)的更多相关文章

  1. Ruby 解析字符串 - 2

    我有一个字符串input="maybe(thisis|thatwas)some((nice|ugly)(day|night)|(strange(weather|time)))"Ruby中解析该字符串的最佳方法是什么?我的意思是脚本应该能够像这样构建句子:maybethisissomeuglynightmaybethatwassomenicenightmaybethiswassomestrangetime等等,你明白了......我应该一个字符一个字符地读取字符串并构建一个带有堆栈的状态机来存储括号值以供以后计算,还是有更好的方法?也许为此目的准备了一个开箱即用的库?

  2. ruby - 如何在 buildr 项目中使用 Ruby 代码? - 2

    如何在buildr项目中使用Ruby?我在很多不同的项目中使用过Ruby、JRuby、Java和Clojure。我目前正在使用我的标准Ruby开发一个模拟应用程序,我想尝试使用Clojure后端(我确实喜欢功能代码)以及JRubygui和测试套件。我还可以看到在未来的不同项目中使用Scala作为后端。我想我要为我的项目尝试一下buildr(http://buildr.apache.org/),但我注意到buildr似乎没有设置为在项目中使用JRuby代码本身!这看起来有点傻,因为该工具旨在统一通用的JVM语言并且是在ruby中构建的。除了将输出的jar包含在一个独特的、仅限ruby​​

  3. ruby - 解析 RDFa、微数据等的最佳方式是什么,使用统一的模式/词汇(例如 schema.org)存储和显示信息 - 2

    我主要使用Ruby来执行此操作,但到目前为止我的攻击计划如下:使用gemsrdf、rdf-rdfa和rdf-microdata或mida来解析给定任何URI的数据。我认为最好映射到像schema.org这样的统一模式,例如使用这个yaml文件,它试图描述数据词汇表和opengraph到schema.org之间的转换:#SchemaXtoschema.orgconversion#data-vocabularyDV:name:namestreet-address:streetAddressregion:addressRegionlocality:addressLocalityphoto:i

  4. ruby-on-rails - Rails 源代码 : initialize hash in a weird way? - 2

    在rails源中:https://github.com/rails/rails/blob/master/activesupport/lib/active_support/lazy_load_hooks.rb可以看到以下内容@load_hooks=Hash.new{|h,k|h[k]=[]}在IRB中,它只是初始化一个空哈希。和做有什么区别@load_hooks=Hash.new 最佳答案 查看rubydocumentationforHashnew→new_hashclicktotogglesourcenew(obj)→new_has

  5. ruby - 用逗号、双引号和编码解析 csv - 2

    我正在使用ruby​​1.9解析以下带有MacRoman字符的csv文件#encoding:ISO-8859-1#csv_parse.csvName,main-dialogue"Marceu","Giveittohimóhe,hiswife."我做了以下解析。require'csv'input_string=File.read("../csv_parse.rb").force_encoding("ISO-8859-1").encode("UTF-8")#=>"Name,main-dialogue\r\n\"Marceu\",\"Giveittohim\x97he,hiswife.\"\

  6. ruby-on-rails - 如果为空或不验证数值,则使属性默认为 0 - 2

    我希望我的UserPrice模型的属性在它们为空或不验证数值时默认为0。这些属性是tax_rate、shipping_cost和price。classCreateUserPrices8,:scale=>2t.decimal:tax_rate,:precision=>8,:scale=>2t.decimal:shipping_cost,:precision=>8,:scale=>2endendend起初,我将所有3列的:default=>0放在表格中,但我不想要这样,因为它已经填充了字段,我想使用占位符。这是我的UserPrice模型:classUserPrice回答before_val

  7. ruby-on-rails - 在混合/模块中覆盖模型的属性访问器 - 2

    我有一个包含模块的模型。我想在模块中覆盖模型的访问器方法。例如:classBlah这显然行不通。有什么想法可以实现吗? 最佳答案 您的代码看起来是正确的。我们正在毫无困难地使用这个确切的模式。如果我没记错的话,Rails使用#method_missing作为属性setter,因此您的模块将优先,阻止ActiveRecord的setter。如果您正在使用ActiveSupport::Concern(参见thisblogpost),那么您的实例方法需要进入一个特殊的模块:classBlah

  8. ruby - 多个属性的 update_column 方法 - 2

    我有一个具有一些属性的模型:attr1、attr2和attr3。我需要在不执行回调和验证的情况下更新此属性。我找到了update_column方法,但我想同时更新三个属性。我需要这样的东西:update_columns({attr1:val1,attr2:val2,attr3:val3})代替update_column(attr1,val1)update_column(attr2,val2)update_column(attr3,val3) 最佳答案 您可以使用update_columns(attr1:val1,attr2:val2

  9. ruby - Nokogiri 剥离所有属性 - 2

    我有这个html标记:我想得到这个:我如何使用Nokogiri做到这一点? 最佳答案 require'nokogiri'doc=Nokogiri::HTML('')您可以通过xpath删除所有属性:doc.xpath('//@*').remove或者,如果您需要做一些更复杂的事情,有时使用以下方法遍历所有元素会更容易:doc.traversedo|node|node.keys.eachdo|attribute|node.deleteattributeendend 关于ruby-Nokog

  10. ruby-on-rails - Rails 模型——非持久类成员或属性? - 2

    对于Rails模型,是否可以/建议让一个类的成员不持久保存到数据库中?我想将用户最后选择的类型存储在session变量中。由于我无法从我的模型中设置session变量,我想将值存储在一个“虚拟”类成员中,该成员只是将值传递回Controller。你能有这样的类(class)成员吗? 最佳答案 将非持久属性添加到Rails模型就像任何其他Ruby类一样:classUser扩展解释:在Ruby中,所有实例变量都是私有(private)的,不需要在赋值前定义。attr_accessor创建一个setter和getter方法:classUs

随机推荐