4

私はAndroidアプリケーションに取り組んでいます。私のアプリでは、複数の色の棒グラフを表示する必要があるため、charts4j ライブラリを使用しました。次のリンクcharts4j exampleのコードを使用しました。

現在の問題は、バーの数が画面を超えた場合にのみ固定バーのみを表示できることです。スクロールして残りのバーを表示できませんでした。これが私のスクリーンショットです。 ここに画像の説明を入力 2

以下は、棒グラフを生成するために使用したコードです。

 public static String getBarChartUrl()
{
    BarChartPlot team1 = Plots.newBarChartPlot( Data.newData( 25, 43, 12, 30,32,25, 43, 12, 30,32,25,25, 43, 12, 30,32,25 ), BLUEVIOLET, "Team A" );
    BarChartPlot team2 = Plots.newBarChartPlot( Data.newData( 8, 35, 11, 5,9,25, 35, 11, 5,9,25,25, 43, 12, 30,32,25 ), ORANGERED, "Team B" );
    BarChartPlot team3 = Plots.newBarChartPlot( Data.newData( 10, 20, 30, 30 ,15,32, 20, 30, 30 ,15,32,25, 43, 12, 30,32,25), LIMEGREEN, "Team C" );

    // Instantiating chart.
    BarChart chart = GCharts.newBarChart( team1, team2, team3 );

    // Defining axis info and styles
    AxisStyle axisStyle = AxisStyle.newAxisStyle( BLACK, 13, AxisTextAlignment.CENTER );
    AxisLabels score = AxisLabelsFactory.newAxisLabels( "Score", 50.0 );
    score.setAxisStyle( axisStyle );
    AxisLabels year = AxisLabelsFactory.newAxisLabels( "Year", 50.0 );
    year.setAxisStyle( axisStyle );

    // Adding axis info to chart.
    chart.addXAxisLabels( AxisLabelsFactory.newAxisLabels( "2002", "2003", "2004", "2005","2006","2007","2008","2009","2010","2011","2012","2013","2014","2015","2016","2017","2018" ) );
    chart.addYAxisLabels( AxisLabelsFactory.newNumericRangeAxisLabels( 0, 100 ) );
    chart.addYAxisLabels( score );
    chart.addXAxisLabels( year );

    chart.setSize( 600, 450 );
    chart.setBarWidth( 50 );
    chart.setSpaceWithinGroupsOfBars( 20 );
    chart.setDataStacked( true );
    chart.setTitle( "Team Scores", BLACK, 16 );
    chart.setGrid( 100, 10, 3, 2 );
    chart.setBackgroundFill( Fills.newSolidFill( ALICEBLUE ) );
    LinearGradientFill fill = Fills.newLinearGradientFill( 0, LAVENDER, 100 );
    fill.addColorAndOffset( WHITE, 0 );
    chart.setAreaFill( fill );
    String url = chart.toURLString();
    return normalize( url );
}

私の問題は

1) データによると、グラフは 17 本のバーを表示する必要がありますが、8 本のバーしか表示されていません [2002 年から 2018 年までは現在、2009 年までしか表示されていません]。水平スクロールで残りのバーを表示するにはどうすればよいですか。

2)バーの数が少ない場合は、[データの各色を表す]ラベルを表示できます。下の画像をご覧くださいラベル付き棒グラフ

の数がそれ以上の場合、ラベルを表示できません。最初の画像を参照してください。

3)境界線に別の背景色を与える方法があることを知りたいです。つまり、スコアと年数のことです

解決策を見つけるのを手伝ってください

4

1 に答える 1

1

私が間違っ ていなければ、チャートを表示するためにcharts4j使用します。WebView

したがって、この行を追加しますWebView

yourWebView.getSettings().setBuiltInZoomControls(true);

これにより、 のズーム機能が提供されますWebView

お役に立てれば...

于 2013-06-22T06:42:22.550 に答える