Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
183473f
commit 6da8899
Showing
766 changed files
with
69,681 additions
and
1 deletion.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,150 @@ | ||
Version 2.3.1 | ||
|
||
1. New Features | ||
|
||
* N/A | ||
|
||
2. Bug Fixes | ||
|
||
* Fixed IE canvas support check for IE10+ | ||
|
||
Version 2.3 | ||
|
||
1. New Features | ||
|
||
* Added pointStyle property to LineSeries and AreaSeries | ||
* Added even_shading and odd_shading properties to LinearAxis | ||
* Added onUserEndZoom event to Chart | ||
* Vertical Axis Captions (check cross-browser) | ||
* Added legend_position, legend_height, and legend_width to Chart | ||
* Added setAxis method to Chart | ||
* New Series: ErrorSeries | ||
* New Series: AlarmSeries | ||
* New Series: OverUnderSeries | ||
* New Series: StepSeries | ||
* New Series: DonutSeries | ||
* New Axis: DateAxis | ||
|
||
2. Bug Fixes | ||
|
||
* Fixed issues with displaying charts in IE9 | ||
|
||
|
||
Version 2.2 | ||
|
||
1. New Features | ||
|
||
* Added a public method to return an array of series in the chart | ||
* Added support for context menu | ||
* Added onBeforeDrawSeries and onAfterDrawSeries events | ||
* Added support for BarSeries points with NULL for Y data | ||
* Added support for LineSeries and ScatterSeries points with NULL for Y data | ||
* Added support for individual grid line and tick styles via the OnNeedsTicks event | ||
|
||
2. Bug Fixes | ||
|
||
* Fixed issues with all series reloading data | ||
* Fixed support for AnalogGaugeSeries to use x_axis_formatter to format it's ticks | ||
* Fixed issues with charts not displaying in IE when inside a TABLE | ||
* Fixed issues with the NumberFormatter not formatting text correctly | ||
* Fixed issues with the LineSeries and AreaSeries not drawing correctly when zoomed in | ||
* Fixed issues with multiple BarSeries not spacing themselves correctly when the base axis data is dates | ||
* Fixed zooming issues with LogarithmicAxis | ||
* Fixed zooming issues with LinearAxis | ||
* Fixed issues in IE with hiding a chart with a container with a border | ||
* Fixed issues with BarSeries ranges | ||
* Fixed issues with removing BarSeries and PieSeries | ||
* Fixed default hint string for PieSeries | ||
* Fixed issues with point selection with BarSeries and FloatingBarSeries (using distance) | ||
* Fixed issues with hint data for StackedBarSeries | ||
* Fixed issues with VML sometimes not showing up in IE8 in STRICT mode | ||
* Fixed issues with exporting SVG when no axes are being used | ||
* Fixed issues with hint pointer z-index | ||
* Fixed default hint texts for AreaSeries, ScatterSeries, PieSeries, and TrendSeries | ||
* Fixed issues with unselecting point before hiding a series | ||
* Fixed issue with stock series when open or close attributes were null | ||
|
||
|
||
Version 2.1 | ||
|
||
1. New Features | ||
|
||
* Added treeLegendRoot property to StackedBarSeries | ||
* Added left and right as valid property values for PieSeries.position and AnalogGaugeSeries.position | ||
* Added defaultColors, useColorArray and onBarNeedsColor to StackedBarSeries | ||
* Added the ability for StackedBarSeries to share a single color array among all owned series | ||
* Added support for IE8 RC1 (and most previous betas) in all modes | ||
* Added chart.setShowLegend method | ||
* Performance increases in IE when drawing multiple series and/or series with large numbers of points | ||
* Added support for gaps in LineSeries (use a blank string as Y) | ||
* Added getBarSizeInPoints to BarSeries and descendant classes | ||
|
||
2. Bug Fixes | ||
|
||
* Corrected several IE related memory leaks | ||
* Corrected memory leaks related to Ajax requests (affected all browsers) | ||
* Corrected memory leaks when removing charts from a page repeatedly without refreshing | ||
* Corrected parameter name for CSVStringDataHandler.setCSV | ||
* Fixed AreaSeries draw when series contains more than 5000 points in IE | ||
* Fixed incorrect parsing of numeric Y values in Stock Series | ||
* Updated chart.onBeforeSelectPoint, onAfterSelectPoint, onShowHint to send the correct value for the HoverOrSelect parameter | ||
* Corrected error when trying to get/set axis captions | ||
* Corrected issues with certain data handlers corrupting data when Object.prototype has been modified | ||
* Fixed issues with legend movement when the chart was inside a scrollable container | ||
* Corrected Axis.pointToPixel so that it returns the proper value when given a string (bin) | ||
* Corrected double loading of data when using JSONStringDataHandler | ||
* Removed the ability for closeLine to affect drawing in LineSeries | ||
* Corrected issues with AreaSeries drawing when closeLine was false in Safari | ||
* Corrected AreaSeries drawing in IE when more than 5000 points exist | ||
* Corrected issues with extremes calculations in StackedBarSeries | ||
|
||
|
||
Version 2.0.1 | ||
|
||
1. New Features | ||
* Added Series.getPadding, Series.setPadding methods | ||
* Added Series.padding property | ||
* Added Chart.legend_state (normal, minimized) | ||
* Added Chart.legendMinimize, Chart.legendRestore, Chart.getLegendState methods | ||
* Added ignoreBounds parameter to Axis.pointToPixel | ||
|
||
2. Bug Fixes | ||
* BarSeries / FloatingBarSeries - Fixed dimension calculation which caused bars | ||
to be missed if the mouse was close to an axis | ||
* BarSeries / FloatingBarSeries - Updated point location / distance to return | ||
exact matches when the mouse is within a bar | ||
* Fixed issue with chart files when in a directory named ejschart_ | ||
* Corrected issue with axis.force_static_points and cursor position | ||
* Corrected issue with legend icons causing non-secure warning in https session | ||
* Added catch to all try/finally statements to account for IE bug | ||
* Corrected adjustment to so that crosshairs position exactly under the cursor | ||
* Renamed variable int to interval to correct Safari 2 parse issue | ||
* Updated default series padding to account for axis assignment | ||
* Corrected issue with horizontal bars not drawing when rendered 1 pixel wide | ||
|
||
3. Documentation Updates | ||
* Added documentation for META tag options | ||
* Added documentation for Series.findClosestByPoint and Series.findClosestByPixel | ||
|
||
|
||
Version 2.0 | ||
|
||
1. New Features: | ||
* Multiple X and Y Axes | ||
* Logarithmic Axis | ||
* JSON String and File Data Handlers | ||
* Stacked Bar Series | ||
* Floating Bar Series | ||
* String Formatter for prefixing and appending to labels | ||
* OpenHighLowClose Series | ||
* Candlestick Series | ||
* Filled Scatter Series Points in IE | ||
* Much optimized rendering of axis labels and ticks | ||
* Cleaner and smaller HTML generation of chart objects | ||
* Faster chart rendering and much better support for many | ||
charts in a single page | ||
* Removed the need for EJSChartIE.css and EJSChartIE6.css | ||
* Better control over styling of major tick marks | ||
* More styling options for grid lines and axis borders | ||
* Easier customization of cursor position elements | ||
* Background coloring with opacity of the chart area and axes |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,132 @@ | ||
/* Emprise JavaScript Charts Stylesheet - Version 2.1 */ | ||
/* Copyright (C) 2006-2009 Emprise Corporation. All Rights Reserved. */ | ||
|
||
.ejschart, .ejschart * { font-family: Verdana; font-size: 10px; cursor: crosshair; padding: 0px; margin: 0px; border: 0px; outline: none; MozUserSelect: none; KhtmlUserSelect: none; -moz-user-select: none; -webkit-user-select: none; -khtml-user-select: none; -o-user-select: none; user-select: none; } | ||
.ejschart { position: relative; width: 100%; height: 100%; } | ||
.ejsc-chart, .ejsc-axes-canvas, .ejsc-series-canvas, .ejsc-series-canvas-div, .ejsc-hint-canvas, .ejsc-canvas-cover, .ejsc-labels { position: absolute; width: 100%; height: 100%; top: 0px; left: 0px; } | ||
.ejsc-canvas-cover { cursor: crosshair; background-color: #ffffff; opacity: 0; alpha: 0; -moz-opacity: 0; -khtml-opacity: 0; filter: alpha(opacity=0); } | ||
.ejsc-canvas-cover { height: expression((this.parentNode.offsetHeight)+"px"); width: expression((this.parentNode.offsetWidth)+"px"); -moz-user-select: none; -webkit-user-select: none; -khtml-user-select: none; user-select: none; } | ||
.ejsc-legend { position: absolute; top: 40px; right: 20px; height: 114px; width: 180px; background-color: #fff; border: 1px solid #aaa; opacity: 0.9; z-index: 9999; filter: alpha(opacity=90); } | ||
.ejsc-legend, .ejsc-legend *, | ||
.ejsc-legend-right, .ejsc-legend-right *, | ||
.ejsc-legend-bottom, .ejsc-legend-bottom * { alpha: 1; -moz-opacity: 1; -khtml-opacity: 1; opacity: 1; filter: alpha(opacity=100); cursor: default; } | ||
.ejsc-legend-minimized { height: 14px; } | ||
.ejsc-legend-minimized .ejsc-legend-minimize { display: none; } | ||
.ejsc-legend-minimized .ejsc-legend-maximize { display: block; } | ||
.ejsc-legend-minimized .ejsc-legend-series-container { display: none; } | ||
.ejsc-legend-minimized .ejsc-legend-owner { display: none; } | ||
.ejsc-legend-caption { padding-left: 3px; background-color: #EEE; background-image: url("images/images.gif"); background-position: 0px -18px; background-repeat: repeat-x; border-bottom: 1px solid #aaa; height: 16px; line-height: 16px; font-weight: bold; text-align: left; overflow: hidden; } | ||
.ejsc-legend-minimize { height: 16px; width: 16px; float: right; } | ||
.ejsc-legend-minimize-mouseout { height: 16px; width: 16px; overflow: hidden; background: url('images/images.gif') -4px -86px no-repeat; } | ||
.ejsc-legend-minimize-mouseover { height: 16px; width: 16px; overflow: hidden; background: url('images/images.gif') -4px -102px no-repeat; } | ||
.ejsc-legend-maximize { display: none; height: 16px; width: 16px; float: right; } | ||
.ejsc-legend-maximize-mouseout { height: 16px; width: 16px; overflow: hidden; background: url('images/images.gif') -4px -54px no-repeat; } | ||
.ejsc-legend-maximize-mouseover { height: 16px; width: 16px; overflow: hidden; background: url('images/images.gif') -4px -70px no-repeat; } | ||
.ejsc-legend-grabber { width: 10px; height: 16px; float: left; overflow: hidden; background: url('images/images.gif') -8px -119px no-repeat; } | ||
.ejsc-legend-owner { background: url('images/images.gif') 0px -34px repeat-x #f4f4f4; height: 14px; line-height: 14px; text-align: left; border-top: 1px solid #aaa; overflow: hidden; padding: 0px 3px; } | ||
.ejsc-legend-owner-icon { background: url('images/images.gif') -6px -328px no-repeat; height: 14px; width: 14px; float: left; } | ||
.ejsc-legend-series-container { height: 80px; padding: 0px; overflow: auto; padding: 1px; position: relative; } | ||
.ejsc-legend-series-div { overflow: hidden; } | ||
.ejsc-legend-series-out { display: block; height: 17px; line-height: 17px; text-decoration: none; margin: 0px; background-image: none; text-decoration: none; background-color: #fff; padding: 2px 3px; position: relative; } | ||
.ejsc-legend-series-over { display: block; height: 17px; line-height: 17px; text-decoration: none; margin: 0px; background-image: url("images/images.gif"); background-position: 0px -34px; background-repeat: repeat-x; text-decoration: none; background-color: #eee; padding: 1px 2px; border: 1px solid #aaa; position: relative; } | ||
.ejsc-legend-series-icon { position: absolute; left: 0px; top: 0px; border: 0px; height: 18px; width: 18px; margin-right: 4px; } | ||
.ejsc-legend-series-icon img { background-image: url("images/images.gif"); background-repeat: no-repeat; height: 16px; width: 16px; border: 0px; position: relative; top: 2px; left: 2px; } | ||
.ejsc-legend-series-over .ejsc-legend-series-icon img { margin: -1px; } | ||
.ejsc-legend-series-caption { margin-left: 18px; margin-right: 18px; position: absolute; width: 100%; line-height: 16px; text-decoration: none; background-image: none; border-bottom: 0px; font-weight: normal; text-align: left; overflow: hidden; height: 17px; white-space: nowrap; } | ||
.ejsc-legend-series-visibility { position: absolute; right: 0px; top: 2px; height: 16px; width: 16px; margin-left: 4px; overflow: hidden; } | ||
.ejsc-legend-series-visibility div { cursor: pointer; height: 16px; width: 16px; overflow: hidden; } | ||
.ejsc-legend-series-on { background: url('images/images.gif') -4px -486px no-repeat; } | ||
.ejsc-legend-series-off { background: url('images/images.gif') -4px -470px no-repeat; } | ||
.ejsc-legend-series-over .ejsc-legend-series-visibility div { margin: -1px 1px; } | ||
.ejsc-canvas-container { position: absolute; } | ||
.ejsc-series-canvas-container { position: absolute; overflow: hidden; } | ||
.ejsc-titlebar { position: absolute; width: 100%; height: 20px; } | ||
.ejsc-titlebar-text { font-size: 11px; font-weight: bold; vertical-align: top; margin-left: 4px; } | ||
.ejsc-zoombox { position: absolute; background-color: #3a6ea5; alpha: .20; -moz-opacity: .20; -khtml-opacity: .20; opacity: .20; filter: alpha(opacity=20); overflow: hidden; } | ||
.ejsc-h-crosshair { position: absolute; height: 100%; width: 1px; left: 50%; margin-left: -1px; overflow: hidden; display: none; } | ||
.ejsc-v-crosshair { position: absolute; width: 100%; height: 1px; top: 50%; margin-top: -1px; overflow: hidden; display: none; } | ||
.ejsc-message { position: absolute; padding: 6px 6px; text-align: center; } | ||
.ejsc-message-info { background-color: #FFFFE1; color: #000; font-weight: bold; border: 1px solid #000; alpha: .80; -moz-opacity: .80; -khtml-opacity: .80; opacity: .80; filter: alpha(opacity=80); } | ||
.ejsc-message-error { background-color: #DA2424; color: #000; font-weight: bold; border: 1px solid #000; alpha: .80; -moz-opacity: .80; -khtml-opacity: .80; opacity: .80; filter: alpha(opacity=80); } | ||
.ejsc-message-nodata { background-color: #fff; color: #000; font-weight: bold; border: 1px solid #000; alpha: .80; -moz-opacity: .80; -khtml-opacity: .80; opacity: .80; filter: alpha(opacity=80); } | ||
.ejsc-message-progress { background-color: #77B3D6; color: #3B5768; font-weight: bold; border: 1px solid #5A869F; alpha: .80; -moz-opacity: .80; -khtml-opacity: .80; opacity: .80; filter: alpha(opacity=80); } | ||
.ejsc-key-grabber { position: absolute; top: 0px; left: 0px; height: 1px; width: 1px; overflow: hidden; display: block; background-color: transparent; border: none; } | ||
.ejsc-h-axis-labels, .ejsc-v-axis-labels, .ejsc-v-label, .ejsc-h-label { position: absolute; } | ||
.ejsc-h-axis-labels, .ejsc-v-axis-labels { height: 100%; width: 100%; } | ||
.ejsc-v-label { text-align: right; } | ||
.ejsc-h-label { text-align: center; } | ||
.ejsc-cursor-position { position: relative; width: 100%; height: 100%; } | ||
.ejsc-cursor-position-marker { overflow: hidden; position: absolute; } | ||
.ejsc-cursor-position-label { padding: 1px; position: absolute; white-space: nowrap; } | ||
.ejsc-cursor-position-h .ejsc-cursor-position-marker { height: 100%; width: 1px; } | ||
.ejsc-cursor-position-v .ejsc-cursor-position-marker { width: 100%; height: 1px; } | ||
.ejsc-cursor-position-marker-left { left: 0px; } | ||
.ejsc-cursor-position-marker-top { top: 0px; } | ||
.ejsc-cursor-position-marker-right { right: 0px; } | ||
.ejsc-cursor-position-marker-bottom { bottom: 0px; } | ||
.ejsc-cursor-position-label-left { text-align: left; left: 0px; } | ||
.ejsc-cursor-position-label-top { top: 0px; } | ||
.ejsc-cursor-position-label-right { text-align: right; right: 0px; } | ||
.ejsc-cursor-position-label-bottom { bottom: 0px; } | ||
.ejsc-v-axis-caption { position: absolute; top: 50%; font-size: 12px; font-weight: bold; white-space: nowrap; text-align: center; overflow: visible; } | ||
.ejsc-left-axis-caption { -moz-transform: rotate(-90deg); -webkit-transform: rotate(-90deg); -o-transform: rotate(-90deg); -ms-transform: rotate(-90deg); } | ||
.ejsc-right-axis-caption { -moz-transform: rotate(90deg); -webkit-transform: rotate(90deg); -o-transform: rotate(90deg); -ms-transform: rotate(90deg); } | ||
.ejsc-h-axis-caption { position: absolute; font-size: 12px; height: 20px; line-height: 20px; font-weight: bold; text-align: center; white-space: nowrap; } | ||
.ejsc-v-axis-caption span, .ejsc-h-axis-caption span { font-size: 12px; font-weight: bold; white-space: nowrap; text-align: center; position: relative; } | ||
.ejsc-v-axis-caption span { font-size: 12px; font-weight: bold; white-space: nowrap; text-align: center; } | ||
.ejsc-hint { z-index: 1; white-space: nowrap; font-family: Helvetica, sans-serif; font-size: 10px; display: none; position: absolute; top: 0px; left: 0px;/* alpha: .70; -moz-opacity: .70; -khtml-opacity: .70; opacity: .70; filter: alpha(opacity=70); */border: 1px solid #999999; background-color: #ffffff; padding: 3px; text-align: left; } | ||
.ejsc-hint a { cursor: pointer; } | ||
.ejsc-hint label { font-weight: bold; font-size: 11px; display: inline; } | ||
.ejsc-hint-canvas-container label { font-weight: bold; display: inline; } | ||
.ejsc-hint-pointer { z-index: 1; display: none; position: absolute; top: 0px; left: 0px; height: 12px; width: 12px; overflow: hidden; } | ||
.ejsc-hint-pointer div { height: 12px; width: 12px; overflow: hidden; } | ||
.ejsc-hint-tl { background: url('images/images.gif') 0px -208px no-repeat; } | ||
.ejsc-hint-tr { background: url('images/images.gif') -12px -208px no-repeat; } | ||
.ejsc-hint-bl { background: url('images/images.gif') 0px -220px no-repeat; } | ||
.ejsc-hint-br { background: url('images/images.gif') -12px -220px no-repeat; } | ||
.ejsc-hidden { display: none; } | ||
.ejsc-invisible { visibility: hidden; } | ||
.ejsc-visible { visibility: visible; } | ||
.ejsc-legend-tree { height: auto; } | ||
.ejsc-legend-tree-items { margin-left: 32px; margin-right: 4px; } | ||
.ejsc-legend-tree-items .ejsc-legend-tree-items { margin-left: 8px; margin-right: 4px; } | ||
.ejsc-legend-tree-item { height: 16px; line-height: 16px; overflow: hidden; white-space: nowrap; text-decoration: none; display: block; cursor: pointer; } | ||
.ejsc-legend-tree-item:hover { font-weight: bold; } | ||
.ejschart, .ejschart * { text-align: left; } | ||
|
||
/* BEGIN SERIES ICONS */ | ||
.ejsc-legend-series-icon img.undefined { background-position: 0px 0px; } | ||
.ejsc-legend-series-icon img.line { background-position: -4px -438px; } | ||
.ejsc-legend-series-icon img.area { background-position: -4px -390px; } | ||
.ejsc-legend-series-icon img.scatter { background-position: -4px -406px; } | ||
.ejsc-legend-series-icon img.pie { background-position: -4px -422px; } | ||
.ejsc-legend-series-icon img.bar-vertical { background-position: -4px -454px; } | ||
.ejsc-legend-series-icon img.bar-horizontal { background-position: -4px -374px; } | ||
.ejsc-legend-series-icon img.floating-bar-vertical { background-position: -4px -518px; } | ||
.ejsc-legend-series-icon img.floating-bar-horizontal { background-position: -4px -502px; } | ||
.ejsc-legend-series-icon img.stacked-bar-vertical { background-position: -4px -264px; } | ||
.ejsc-legend-series-icon img.stacked-bar-horizontal { background-position: -4px -534px; } | ||
.ejsc-legend-series-icon img.function { background-position: -4px -312px; } | ||
.ejsc-legend-series-icon img.trend { background-position: -4px -296px; } | ||
.ejsc-legend-series-icon img.candlestick { background-position: -4px -248px; } | ||
.ejsc-legend-series-icon img.ohlc { background-position: -4px -232px; } | ||
.ejsc-legend-series-icon img.analog-gauge { background-position: -4px -280px; } | ||
/* END SERIES ICONS */ | ||
|
||
.ejsc-legend-right { position: absolute; top: 0px; right: 0px; border: 1px solid #ccc; background: #fff; overflow: auto;; } | ||
.ejsc-legend-bottom { position: absolute; bottom: 0px; left: 0px; border: 1px solid #ccc; background: #fff; overflow: auto; } | ||
.ejsc-legend-bottom .ejsc-legend-series { width: 100px; float: left; } | ||
.ejsc-legend-bottom .ejsc-legend-series-container { height: auto !important; } | ||
.ejsc-zoom-buttons { position: absolute; top: 0px; right: 0px; } | ||
.ejsc-zoom-buttons button { position: absolute; top: 0; right: 0; padding: 0; margin: 0 !important; height: 12px; width: 12px; border: 0; background-color: transparent; background-image: url('./images/zoom.gif'); overflow: hidden; } | ||
.ejsc-zoom-buttons button.zoom-in { background-position: -12px 0; } | ||
.ejsc-zoom-buttons button.zoom-out { right: 16px; background-position: 0 0; } | ||
|
||
@media print { | ||
.ejsc-canvas-cover { display: none !important; } | ||
.ejsc-legend, .ejsc-legend * { filter: none !important; opacity: 1 !important; } | ||
.ejsc-v-axis-caption { filter: flipH !important; } | ||
.ejsc-zoom-buttons { display: none !important; } | ||
} | ||
|
||
|
Oops, something went wrong.