前页 | 后页 |
使用 JSON图表定义
与其自己编写动态图表,不如提供一个简单的图表描述。动态图表可以由单个数据源设计和完全定义; JSON 目前是首选的数据源格式,但将来会提供 XML 和其他格式。
您可以通过提供一个遵循 DynamicChart 模式的简单 JSON 数据结构来定义图表。该模式在Schema 编辑器中可用。它也可以在Enterprise Architect示例模型的 Dynamic Charts包中轻松查看。
(要查看 DynamicChart架构,请选择开发 >架构建模> Schema 编辑器> 打开Schema 编辑器,单击“配置文件”字段中的按钮,然后选择 DynamicChartSchema。)
数据源 - JSON
要渲染图表数据结构,首先选择工件元素,然后打开内部代码编辑器对于浏览器中的选择,右键单击并选择“特征>编辑内部代码”,或者对于图表上的选择,右键单击并选择“脚本图表。这些将打开编辑器供您编辑图表脚本。创建一个 JSON 变量来定义要呈现的图表,然后编写您的 ConstructChart函数。
ConstructChart函数将显示在开始图表上的图表元素的标识(一个GUID string )作为其单个参数。然后调用内置函数ConstructChartFromJSON,将GUID作为第一个参数,将 JSON 结构作为第二个参数传递,如下例所示:
Example Datasource in JSON
var barChart2DJSON ={
"Category" : "BarSmart",
"Type" : "Simple",
"Title" : "Vehicle Expenses",
"Series" :
[
{
"Label" : "Fuel",
"Data":
{
"Type" : "Column",
"Points" :
[
{ "Category": "Jan", "Y": 1.0 },
{ "Category": "Feb", "Y": 3.0 },
{ "Category": "Mar", "Y": 7.0 },
{ "Category": "Apr", "Y": 8.0 },
{ "Category": "May", "Y": 10.0 },
{ "Category": "Jun", "Y": 15.0 }
]
}
},
{
"Label" : "Taxes",
"Data":
{
"Type" : "Normal",
"Points" :
[
{ "Y":10.0 },
{ "Y":12.0 },
{ "Y":16.0 },
{ "Y":17.0 },
{ "Y":10.0 },
{ "Y":12.0 }
]
}
},
{
"Label" : "Maintenance",
"Data":
{
"Type" : "Normal",
"Points" :
[
{ "Y":5.0 },
{ "Y":2.0 },
{ "Y":6.0 },
{ "Y":7.0 },
{ "Y":1.0 },
{ "Y":2.0 }
]
}
},
{
"Label" : "Other",
"Data":
{
"Type" : "Normal",
"Points" :
[
{ "Y":2.5 },
{ "Y":2.5 },
{ "Y":2.5 },
{ "Y":2.5 },
{ "Y":2.5 },
{ "Y":2.5 }
]
}
}
]
};
function ConstructChart(chartGuid)
{
ConstructChartFromJSON(chartGuid, barChart2DJSON);
}
进一步的例子
示例模型中提供了更多示例示例(参见包“报告 > 图表 > 动态图表”)。
每个图表示例都提供了一个仪表板图和 DynamicChart元素。从这些示例中选择一个元素,然后按“Alt+7”查看图表背后的行为。查看各种图表示例是了解如何使用 JSON 生成您可能感兴趣的图表类型的最佳方式。