6

ご挨拶 私は jquery の初心者であり、公式のflotの例から「turning-series.html」のバージョンを使用する問題を修正しようとしています。2-オプションを変更して、マウスをポイントに合わせると、Y軸の値が表示されるようにする方法は?

//My data instance:
var datasets = {
        "1st input": {
            label: "1st input",
            data: [
            [1.250208e+12, 1339],   
            [1.2502944e+12, 1316],      
            [1.2503808e+12, 1379],
            [1.2504672e+12, 1223],
             ]
        },
        "2nd input": {
            label: "2nd input",
            data: [
            [1.2503808e+12, 1324],

            ]
        },
    };


//old one, instead of displaying the selected ones from choiceContainer, I want to display all.
    function showWhole() {
        var data = [];
        choiceContainer.find("option:selected").each(function () {
            var key = $(this).attr("name");
            if (key && datasets[key])
                data.push(datasets[key]);
        });

        if (data.length > 0)
            $.plot($("#placeholder"), data, {
                yaxis: {},
                xaxis: { mode: "time",minTickSize: [1, "day"],timeformat: "%d/%m/%y"},"lines": {"show": "true"},"points": {"show": "true"},clickable:true,hoverable: true
            });
    }

よろしく

4

1 に答える 1

17

FLOT Webサイトからturning-series.htmlの例を取り、いくつかの変更を加えました。以下をコピーして新しいHTMLファイルに貼り付けて実行します-Firefoxで動作しますが、IEではテストされていません。

<html>
 <頭>
    <meta http-equiv = "Content-Type" content = "text / html; charset = utf-8">
    <title>フロートの例</title>
    <link href = "http://people.iola.dk/olau/flot/examples/layout.css" rel = "stylesheet" type = "text / css"> </ link>
    <!-[IEの場合]> <script language = "javascript" type = "text / javascript" src = "http://people.iola.dk/olau/flot/excanvas.pack.js"> </ script > <![endif]->
    <script language = "javascript" type = "text / javascript" src = "http://people.iola.dk/olau/flot/jquery.js"> </ script>
    <script language = "javascript" type = "text / javascript" src = "http://people.iola.dk/olau/flot/jquery.flot.js"> </ script>
    <スタイル>#tooltip{font-size:8pt; } </ style>
 </ head>
    <本体>
    <h1>プロットの例</h1>

    <div id = "placeholder" style = "width:600px; height:300px;"> </ div>

    <p>実際のデータの例を次に示します。
        さまざまな国で一定の(2005年)百万米ドル(出典:<a href="http://www.sipri.org/"> SIPRI </a>)</ p>


<script id = "source" language = "javascript" type = "text / javascript">
$(関数(){
    varデータセット={
        「アメリカ」:{
            レーベル:「USA」、
            データ:[[1988、483994]、[1989、479060]、[1990、457648]、[1991、401949]、[1992、424705]、[1993、402375]、[1994、377867]、[1995、357382] 、[1996、337946]、[1997、336185]、[1998、328611]、[1999、329421]、[2000、342172]、[2001、344932]、[2002、387303]、[2003、440813]、[ 2004、480451]、[2005、504638]、[2006、528692]]
        }、        
        「ロシア」:{
            ラベル:「ロシア」、
            データ:[[1988、218000]、[1989、203000]、[1990、171000]、[1992、42500]、[1993、37600]、[1994、36600]、[1995、21700]、[1996、19200] 、[1997、21300]、[1998、13600]、[1999、14000]、[2000、19100]、[2001、21300]、[2002、23600]、[2003、25100]、[2004、26100]、[ 2005、31100]、[2006、34700]]
        }、
        "英国": {
            ラベル:「UK」、
            データ:[[1988、62982]、[1989、62027]、[1990、60696]、[1991、62348]、[1992、58560]、[1993、56393]、[1994、54579]、[1995、50818] 、[1996、50554]、[1997、48276]、[1998、47691]、[1999、47529]、[2000、47778]、[2001、48760]、[2002、50949]、[2003、57452]、[ 2004、60234]、[2005、60076]、[2006、59213]]
        }、
        "ドイツ":{
            ラベル:「ドイツ」、
            データ:[[1988、55627]、[1989、55475]、[1990、58464]、[1991、55134]、[1992、52436]、[1993、47139]、[1994、43962]、[1995、43238] 、[1996、42395]、[1997、40854]、[1998、40993]、[1999、41822]、[2000、41147]、[2001、40474]、[2002、40604]、[2003、40044]、[ 2004、38816]、[2005、38060]、[2006、36984]]
        }、
    };


    //空の配列を定義します
    var data = [];

    //この既存のループを使用します...
    var i = 0;
    $ .each(datasets、function(key、val){
       val.color = i;
       ++ i;

       // ...そしてこの行を追加します-データ配列が(行ごとに)入力されるようにします
        data.push(datasets [key]);
    });

    //新しく入力されたデータ配列を使用してグラフをプロットします
    $ .plot($( "#placeholder")、data、{
                yaxis:{min:0}、
                xaxis:{tickDecimals:0}、
                グリッド:{ホバー可能:true、クリック可能:true}、
                ポイント:{表示:true}、
                行:{表示:true}、
            });


    //各ポイントにホバリングロジックを追加します...
     var previousPoint = null;
    $( "#placeholder")。bind( "plothover"、function(event、pos、item){
        $( "#x")。text(pos.x.toFixed(2));
        $( "#y")。text(pos.y.toFixed(2));

            if(item){
                if(previousPoint!= item.datapoint){
                    previousPoint = item.datapoint;
                    $( "#tooltip")。remove();
                    var x = item.datapoint [0] .toFixed(2)、y = item.datapoint [1] .toFixed(2);
                    showTooltip(item.pageX、item.pageY、item.series.label + "of" + x + "=" + y);
                }
            }
            そうしないと {
                $( "#tooltip")。remove();
                previousPoint = null;            
            }

    });

    //ツールチップを表示します
    関数showTooltip(x、y、contents){
        $('<div id ="tooltip">'+コンテンツ+'</div>')。css({
            位置:'絶対'、
            表示:'なし'、
            上:y-35、
            左:x + 5
            ボーダー: '1px solid #fdd'、
            パディング: '2px'、
            'background-color':'#fee'、
            不透明度:0.80
        })。appendTo( "body")。fadeIn(200);
    }

});
</ script>

</ body>
</ html>

于 2009-08-17T13:51:57.290 に答える