2

現在、GraphView ライブラリ (http://www.jjoe64.com/p/graphview-library.html) を使用してグラフを描画しようとしています。現在バージョン3を使用しています。

BarChartGraph のバーについて問題があります。33 要素の配列をプッシュしますが、char はグラフ全体よりも小さく、グラフには使用されていないスペースが残ります。

画像を添付しました。

これは XML コードです。

<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
 android:layout_width="fill_parent"
    android:layout_height="fill_parent">

     <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical">

    <TextView android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:id="@+id/txtX" 
        android:text="X: 0" 
        android:textSize="15sp"></TextView>

    <TextView
        android:id="@+id/txtZ"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginTop="39dp"
        android:text="Z: 0"
        android:textSize="15sp" />
    [....]

    <EditText
        android:id="@+id/et1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginTop="39dp"
        android:ems="10"
        android:inputType="textMultiLine"
        android:focusable="false">
    </EditText>

    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="wrap_content"
        android:layout_height="250dp"
        android:id="@+id/graph1" />

</LinearLayout>

そして、これはメインクラスのグラフに関するコードです:

  GraphViewData[] data;
    GraphView graphView;

     // Inizializzazioni utili per il grafico  
        data = new GraphViewData[(N/2)+1];  // N=64

        graphView = new BarGraphView(this, "example") {  //Prova a mettere primad di questo setHorizontalabe
            @Override
            protected String formatLabel(double value, boolean isValueX) {
                if (isValueX) {
                    return Double.toString(value);
                } else return super.formatLabel(value, isValueX); // let the y-value be normal-formatted
               }
            };

      LinearLayout layout = (LinearLayout) findViewById(R.id.graph1);   
      layout.addView(graphView);

        for (int i=0; i<(N/2)+1; i++)
           data[i] = new GraphViewData(i, new_sig[i]);

      graphView.setBackgroundColor(Color.BLACK);

      graphView.addSeries(new GraphViewSeries(data));

      graphView.invalidate();
      graphView.redrawAll();

https://docs.google.com/open?id=0B5sm5aNTZkIiN1hrV1Q2MU9iYmM

私は設定しました:

graphView.setViewPort(0, 33);

しかし、何も変わっていません!

小さい ViewPort でも試してみましたが、この新しい投稿の画像のように結果は同じでした。この場合、ViewPort は 20 でした。

graphView.setViewPort(0, 20);  

https://docs.google.com/open?id=0B5sm5aNTZkIiMFlSSFd1T1ViQ00

しかし、図に示されているように、空のスペースのままです。

XMLファイルでディメンションタグも変更しようとしました。「wrap_content」を「match_parent」に交換しましたが、結果はありません。次に、partentビューのLinearLayout、そしてScrollViewもmatch_parentに変更していました。

一連の 8 データ (data.length=8) も作成しようとしましたが、結果は同じで、グラフの右側に同じ空白が追加されました。

全てに感謝!:)

4

1 に答える 1