其实意外的简单,因为有现成的包可以用,不过文档并没有写全,有些地方需要解释一下。
Github地址:https://github.com/lishewen/Blazor.ECharts
基本上照着README.md弄就差不多了,这里只说具体的用法
首先确定你使用哪种图标,这里以line为例,则使用ELine组件:
<ELine Option="_dayOption"></ELine>
注意到这里我并没有使用Demo推荐的写法,而是将option通过对象的方式载入,那么就需要定义_dayOption变量了:
private EChartsOption<LineOption> _dayOption = new EChartsOption<LineOption>()
{
XAxis = new List<XAxis>()
{
new XAxis()
{
Data = new List<string>() { "111" }
}
},
YAxis = new List<YAxis>()
{
new YAxis()
{
AxisLabel = new AxisLabel()
{
Formatter = new JFunc("yAxisFormatter")
}
}
},
Series = new List<object>()
{
new LineOption()
{
AreaStyle = new AreaStyle(),
Smooth = true,
Data = new List<int>() { 114514 }
}
},
Tooltip = new Tooltip()
{
Formatter = new JFunc("tooltipFormatter"),
Trigger = TooltipTrigger.Axis
}
};
这里是我实际使用的一个实例,可以看到我使用了Formatter,这里用JFunc来避免转译成字符串导致无法使用JS Function的问题,理论上这里也可以替换成JS函数定义,不过我已经把函数定义写到js文件里了,这里只使用函数名。剩下的就是按部就班,根据js版的option进行配置即可。
顺便说一下我使用此方法而不使用Demo中的方法的原因:使用该方法方便将动态数据导入图表,使用Demo的方法难以拼接字符串(也有可能是我的用法不对)