JAVA工具
JAVA使用软件 开发工具
posts - 87,  comments - 9,  trackbacks - 0

JSON Format: For library writers

The data must be in JSON format. The basic JSON obect is:

{}
Put all other objects inside this. For example the JSON object with a title looks like this:
{ "title":{ "text": "Many data lines",
 "style": "{font-size: 20px; color:#0000ff; font-family: Verdana; text-align: center;}" } }

Title (optional)

All attributes are optional.
text: string, the title
style: string, the CSS style

Example:

{ "title":{ "text": "Many data lines", 
"style": "{font-size: 20px; color:#0000ff; font-family: Verdana; text-align: center;}" } }

Y Legend (optional)

All attributes are optional.
text: string, the title for the Y axis
style: string, a CSS string

Example:

{ "y_legend":{ "text": "Open Flash Chart", "style": "{color: #736AFF; font-size: 12px;}" } }

X Axis (optional)

This object is optional, if it is not present the chart will show a default X axis.
All attributes are optional.
stroke : number, the width of the line
tick-height : number, the height of the ticks
colour : string, the colour of the line
offset: boolean, x axis min (usually 0) is offset, used in bar charts
grid-colour: string, colour of the grid lines
3d: boolean, is it 3D
steps: show every n ticks
labels: array of strings, the labels of each X point

Example:

{ "x_axis":{ "stroke": 1, "tick_height": 10, "colour": "#d000d0", "grid_colour": "#00ff00",
 "labels": ["January","February","March","April","May","June","July","August","Spetember"] } }

Y Axis optional

This object is optional, if it is not present the chart will show a default Y axis.
All attributes are optional.

Example:

{ "y_axis":{ "stroke": 4, "tick_length": 3, "colour": "#d000d0", "grid_colour": "#00ff00", "offset": 0, "max": 20 } }

Elements

The elements attribute is an array of generic objects.
Each object is the type of chart (line, bar, scatter etc.)

Example:

{ "elements":[ { "type": "bar", "alpha": 0.5, "colour": "#9933CC", "text": "Page views", "font-size": 10, 
"values" : [9,6,7,9,5,7,6,9,7] },
 { "type": "bar", "alpha": 0.5, "colour": "#CC9933", "text": "Page views 2", "font-size": 10, 
"values" : [9,6,7,9,5,7,6,9,7] } ] }

Elements.bar

A bar chart. Must be inside the elements array.

type: string, must be 'bar'
alpha: number, between 0 (transparent) and 1 (opaque)
colour: string, CSS colour
text: string, the key
font-size: number, size of the key text
values: array of numbers, height of each bar

Example:

{ "elements":[ { "type": "bar", "alpha": 0.5, "colour": "#9933CC", "text": 
"Page views", "font-size": 10, "values" : [9,6,7,9,5,7,6,9,7] } ] }

Elements.pie

A pie chart. Must be inside the elements array.

type: string, must be 'pie'
start-angle: number, the angle of the first pie slice
colours: array of strings, CSS colour
alpha: number, between 0 (transparent) and 1 (opaque)
stroke: number, the outline width
animate: boolean, animate the pie chart
values: array of objects, value of each pie slice. May be a number or a slice object

Example:

{ "elements":[ { "type": "pie", "start-angle": 180, "colours": 
["#d01f3c","#356aa0","#C79810","#73880A","#D15600","#6BBA70"], "alpha": 0.6, "stroke": 2, "animate": 1, 
"values" : [0,2,{"value":0,"text":"zero"},2,6] } ] }

Elements.hbar

Horizontal Bar chart

values: array of objects. Each value must have a "right" and an optional "left" value

Example:

{ "elements":[ { "type": "hbar", "colour": "#9933CC", "text": "Page views", "font-size": 10,
 "values" : [{"right":10},{"right":15},{"left":13,"right":17}] } ] }

Elements.line_dot

Line chart

values: Array of numbers:

Example: { "elements":[ { "type": "line_dot", "colour": "#736AFF", 
"text": "Avg. wave height (cm)", "font-size": 10, "width": 2, "dot-size": 4,
 "values" : [1.5,1.69,1.88,2.06,2.21,2.34,null,2.35,2.23,2.08] } ] }

Elements.line*

Just a quick note of the 3 different line types:

Example:

{ "title":{ "text":"Many data lines", "style":"{font-size: 30px;}" }, 
"y_legend":{ "text":"Open Flash Chart", "style":"{font-size: 12px; color:#736AFF;}" }, 
"elements":[ { "type": "line", "colour": "#9933CC", "text": "Page views", "width": 2, 
"font-size": 10, "dot-size": 6, "values" : [15,18,19,14,17,18,15,18,17] },
 { "type": "line_dot", "colour": "#CC3399", "width": 2, "text": "Downloads", "font-size": 10, "dot-size": 5, 
"values" : [10,12,14,9,12,13,10,13,12] }, { "type": "line_hollow", "colour": "#80a033", "width": 2, "text": 
"Bounces", "font-size": 10, "dot-size": 6, "values" : [5,7,9,7,4,6,1,2,5] } ], "y_axis":{ "max": 20 }, 
"x_axis":{ "steps": 2, "labels": ["January","February","March","April","May","June","July","August","September"] } }

Examples

Here is a simple JSON object that contains a horizontal bar chart:

{ "title":{ "text":"HBar Map X values", "style":"{font-size: 20px; font-family: Verdana; text-align: center;}" },
 "elements":[ { "type": "hbar", "colour": "#9933CC", "text": "Page views", "font-size": 10, 
"values" : [{"right":10},{"right":15},{"left":13,"right":17}] } ], 
"x_axis":{ "min": 0, "max": 20, "offset": 0, 
"labels": ["a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v"] },
 "y_axis":{ "stroke": 14, "tick_length": 30, "colour": "#d09090", "grid_colour": "#00ff00", "offset": 1, 
"labels": ["slashdot.org","digg.com","reddit.com"] } }
posted on 2011-07-27 11:41 王豪 阅读(426) 评论(0)  编辑  收藏

只有注册用户登录后才能发表评论。


网站导航:
 

常用链接

留言簿

随笔分类

随笔档案

搜索

  •  

最新评论

阅读排行榜

评论排行榜