⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 timeseries.html

📁 jfreechart1。0。2的api。
💻 HTML
📖 第 1 页 / 共 5 页
字号:
<FONT color="green">566</FONT>        /**<a name="line.566"></a><FONT color="green">567</FONT>         * Adds a new data item to the series and sends <a name="line.567"></a><FONT color="green">568</FONT>         * a {@link org.jfree.data.general.SeriesChangeEvent} to all registered <a name="line.568"></a><FONT color="green">569</FONT>         * listeners.<a name="line.569"></a><FONT color="green">570</FONT>         *<a name="line.570"></a><FONT color="green">571</FONT>         * @param period  the time period (&lt;code&gt;null&lt;/code&gt; not permitted).<a name="line.571"></a><FONT color="green">572</FONT>         * @param value  the value (&lt;code&gt;null&lt;/code&gt; permitted).<a name="line.572"></a><FONT color="green">573</FONT>         */<a name="line.573"></a><FONT color="green">574</FONT>        public void add(RegularTimePeriod period, Number value) {<a name="line.574"></a><FONT color="green">575</FONT>            // defer argument checking...<a name="line.575"></a><FONT color="green">576</FONT>            add(period, value, true);<a name="line.576"></a><FONT color="green">577</FONT>        }<a name="line.577"></a><FONT color="green">578</FONT>    <a name="line.578"></a><FONT color="green">579</FONT>        /**<a name="line.579"></a><FONT color="green">580</FONT>         * Adds a new data item to the series and sends <a name="line.580"></a><FONT color="green">581</FONT>         * a {@link org.jfree.data.general.SeriesChangeEvent} to all registered <a name="line.581"></a><FONT color="green">582</FONT>         * listeners.<a name="line.582"></a><FONT color="green">583</FONT>         *<a name="line.583"></a><FONT color="green">584</FONT>         * @param period  the time period (&lt;code&gt;null&lt;/code&gt; not permitted).<a name="line.584"></a><FONT color="green">585</FONT>         * @param value  the value (&lt;code&gt;null&lt;/code&gt; permitted).<a name="line.585"></a><FONT color="green">586</FONT>         * @param notify  notify listeners?<a name="line.586"></a><FONT color="green">587</FONT>         */<a name="line.587"></a><FONT color="green">588</FONT>        public void add(RegularTimePeriod period, Number value, boolean notify) {<a name="line.588"></a><FONT color="green">589</FONT>            // defer argument checking...<a name="line.589"></a><FONT color="green">590</FONT>            TimeSeriesDataItem item = new TimeSeriesDataItem(period, value);<a name="line.590"></a><FONT color="green">591</FONT>            add(item, notify);<a name="line.591"></a><FONT color="green">592</FONT>        }<a name="line.592"></a><FONT color="green">593</FONT>    <a name="line.593"></a><FONT color="green">594</FONT>        /**<a name="line.594"></a><FONT color="green">595</FONT>         * Updates (changes) the value for a time period.  Throws a <a name="line.595"></a><FONT color="green">596</FONT>         * {@link SeriesException} if the period does not exist.<a name="line.596"></a><FONT color="green">597</FONT>         *<a name="line.597"></a><FONT color="green">598</FONT>         * @param period  the period (&lt;code&gt;null&lt;/code&gt; not permitted).<a name="line.598"></a><FONT color="green">599</FONT>         * @param value  the value (&lt;code&gt;null&lt;/code&gt; permitted).<a name="line.599"></a><FONT color="green">600</FONT>         */<a name="line.600"></a><FONT color="green">601</FONT>        public void update(RegularTimePeriod period, Number value) {<a name="line.601"></a><FONT color="green">602</FONT>            TimeSeriesDataItem temp = new TimeSeriesDataItem(period, value);<a name="line.602"></a><FONT color="green">603</FONT>            int index = Collections.binarySearch(this.data, temp);<a name="line.603"></a><FONT color="green">604</FONT>            if (index &gt;= 0) {<a name="line.604"></a><FONT color="green">605</FONT>                TimeSeriesDataItem pair = (TimeSeriesDataItem) this.data.get(index);<a name="line.605"></a><FONT color="green">606</FONT>                pair.setValue(value);<a name="line.606"></a><FONT color="green">607</FONT>                fireSeriesChanged();<a name="line.607"></a><FONT color="green">608</FONT>            }<a name="line.608"></a><FONT color="green">609</FONT>            else {<a name="line.609"></a><FONT color="green">610</FONT>                throw new SeriesException(<a name="line.610"></a><FONT color="green">611</FONT>                    "TimeSeries.update(TimePeriod, Number):  period does not exist."<a name="line.611"></a><FONT color="green">612</FONT>                );<a name="line.612"></a><FONT color="green">613</FONT>            }<a name="line.613"></a><FONT color="green">614</FONT>    <a name="line.614"></a><FONT color="green">615</FONT>        }<a name="line.615"></a><FONT color="green">616</FONT>    <a name="line.616"></a><FONT color="green">617</FONT>        /**<a name="line.617"></a><FONT color="green">618</FONT>         * Updates (changes) the value of a data item.<a name="line.618"></a><FONT color="green">619</FONT>         *<a name="line.619"></a><FONT color="green">620</FONT>         * @param index  the index of the data item.<a name="line.620"></a><FONT color="green">621</FONT>         * @param value  the new value (&lt;code&gt;null&lt;/code&gt; permitted).<a name="line.621"></a><FONT color="green">622</FONT>         */<a name="line.622"></a><FONT color="green">623</FONT>        public void update(int index, Number value) {<a name="line.623"></a><FONT color="green">624</FONT>            TimeSeriesDataItem item = getDataItem(index);<a name="line.624"></a><FONT color="green">625</FONT>            item.setValue(value);<a name="line.625"></a><FONT color="green">626</FONT>            fireSeriesChanged();<a name="line.626"></a><FONT color="green">627</FONT>        }<a name="line.627"></a><FONT color="green">628</FONT>    <a name="line.628"></a><FONT color="green">629</FONT>        /**<a name="line.629"></a><FONT color="green">630</FONT>         * Adds or updates data from one series to another.  Returns another series<a name="line.630"></a><FONT color="green">631</FONT>         * containing the values that were overwritten.<a name="line.631"></a><FONT color="green">632</FONT>         *<a name="line.632"></a><FONT color="green">633</FONT>         * @param series  the series to merge with this.<a name="line.633"></a><FONT color="green">634</FONT>         *<a name="line.634"></a><FONT color="green">635</FONT>         * @return A series containing the values that were overwritten.<a name="line.635"></a><FONT color="green">636</FONT>         */<a name="line.636"></a><FONT color="green">637</FONT>        public TimeSeries addAndOrUpdate(TimeSeries series) {<a name="line.637"></a><FONT color="green">638</FONT>            TimeSeries overwritten = new TimeSeries("Overwritten values from: " <a name="line.638"></a><FONT color="green">639</FONT>                    + getKey(), series.getTimePeriodClass());<a name="line.639"></a><FONT color="green">640</FONT>            for (int i = 0; i &lt; series.getItemCount(); i++) {<a name="line.640"></a><FONT color="green">641</FONT>                TimeSeriesDataItem item = series.getDataItem(i);<a name="line.641"></a><FONT color="green">642</FONT>                TimeSeriesDataItem oldItem = addOrUpdate(item.getPeriod(), <a name="line.642"></a><FONT color="green">643</FONT>                        item.getValue());<a name="line.643"></a><FONT color="green">644</FONT>                if (oldItem != null) {<a name="line.644"></a><FONT color="green">645</FONT>                    overwritten.add(oldItem);<a name="line.645"></a><FONT color="green">646</FONT>                }<a name="line.646"></a><FONT color="green">647</FONT>            }<a name="line.647"></a><FONT color="green">648</FONT>            return overwritten;<a name="line.648"></a><FONT color="green">649</FONT>        }<a name="line.649"></a><FONT color="green">650</FONT>    <a name="line.650"></a><FONT color="green">651</FONT>        /**<a name="line.651"></a><FONT color="green">652</FONT>         * Adds or updates an item in the times series and sends a <a name="line.652"></a><FONT color="green">653</FONT>         * {@link org.jfree.data.general.SeriesChangeEvent} to all registered <a name="line.653"></a><FONT color="green">654</FONT>         * listeners.<a name="line.654"></a><FONT color="green">655</FONT>         *<a name="line.655"></a><FONT color="green">656</FONT>         * @param period  the time period to add/update (&lt;code&gt;null&lt;/code&gt; not <a name="line.656"></a><FONT color="green">657</FONT>         *                permitted).<a name="line.657"></a><FONT color="green">658</FONT>         * @param value  the new value.<a name="line.658"></a><FONT color="green">659</FONT>         *<a name="line.659"></a><FONT color="green">660</FONT>         * @return A copy of the overwritten data item, or &lt;code&gt;null&lt;/code&gt; if no <a name="line.660"></a><FONT color="green">661</FONT>         *         item was overwritten.<a name="line.661"></a><FONT color="green">662</FONT>         */<a name="line.662"></a><FONT color="green">663</FONT>        public TimeSeriesDataItem addOrUpdate(RegularTimePeriod period, <a name="line.663"></a><FONT color="green">664</FONT>                                              double value) {<a name="line.664"></a><FONT color="green">665</FONT>            return this.addOrUpdate(period, new Double(value));    <a name="line.665"></a><FONT color="green">666</FONT>        }<a name="line.666"></a><FONT color="green">667</FONT>        <a name="line.667"></a><FONT color="green">668</FONT>        /**<a name="line.668"></a><FONT color="green">669</FONT>         * Adds or updates an item in the times series and sends a <a name="line.669"></a><FONT color="green">670</FONT>         * {@link org.jfree.data.general.SeriesChangeEvent} to all registered <a name="line.670"></a><FONT color="green">671</FONT>         * listeners.<a name="line.671"></a><FONT color="green">672</FONT>         *<a name="line.672"></a><FONT color="green">673</FONT>         * @param period  the time period to add/update (&lt;code&gt;null&lt;/code&gt; not <a name="line.673"></a><FONT color="green">674</FONT>         *                permitted).<a name="line.674"></a><FONT color="green">675</FONT>         * @param value  the new value (&lt;code&gt;null&lt;/code&gt; permitted).<a name="line.675"></a><FONT color="green">676</FONT>         *<a name="line.676"></a><FONT color="green">677</FONT>         * @return A copy of the overwritten data item, or &lt;code&gt;null&lt;/code&gt; if no <a name="line.677"></a><FONT color="green">678</FONT>         *         item was overwritten.<a name="line.678"></a><FONT color="green">679</FONT>         */<a name="line.679"></a><FONT color="green">680</FONT>        public TimeSeriesDataItem addOrUpdate(RegularTimePeriod period, <a name="line.680"></a><FONT color="green">681</FONT>                                              Number value) {<a name="line.681"></a><FONT color="green">682</FONT>    <a name="line.682"></a><FONT color="green">683</FONT>            if (period == null) {<a name="line.683"></a><FONT color="green">684</FONT>                throw new IllegalArgumentException("Null 'period' argument.");   <a name="line.684"></a><FONT color="green">685</FONT>            }<a name="line.685"></a><FONT color="green">686</FONT>            TimeSeriesDataItem overwritten = null;<a name="line.686"></a><FONT color="green">687</FONT>    <a name="line.687"></a><FONT color="green">688</FONT>            TimeSeriesDataItem key = new TimeSeriesDataItem(period, value);<a name="line.688"></a><FONT color="green">689</FONT>            int index = Collections.binarySearch(this.data, key);<a name="line.689"></a><FONT color="green">690</FONT>            if (index &gt;= 0) {<a name="line.690"></a><FONT color="green">691</FONT>                TimeSeriesDataItem existing <a name="line.691"></a><FONT color="green">692</FONT>                    = (TimeSeriesDataItem) this.data.get(index);<a name="line.692"></a><FONT color="green">693</FONT>                overwritten = (TimeSeriesDataItem) existing.clone();<a name="line.693"></a><FONT color="green">694</FONT>                existing.setValue(value);<a name="line.694"></a><FONT color="green">695</FONT>                removeAgedItems(false);  // remove old items if necessary, but<a name="line.695"></a><FONT color="green">696</FONT>                                         // don't notify anyone, because that<a name="line.696"></a><FONT color="green">697</FONT>                                         // happens next anyway...<a name="line.697"></a><FONT color="green">698</FONT>                fireSeriesChanged();<a name="line.698"></a><FONT color="green">699</FONT>            }<a name="line.699"></a><FONT color="green">700</FONT>            else {<a name="line.700"></a><FONT color="green">701</FONT>                this.data.add(-index - 1, new TimeSeriesDataItem(period, value));<a name="line.701"></a><FONT color="green">702</FONT>    <a name="line.702"></a><FONT color="green">703</FONT>                // check if this addition will exceed the maximum item count...<a name="line.703"></a><FONT color="green">704</FONT>                if (getItemCount() &gt; this.maximumItemCount) 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -