2014-09-11 2 views

답변

0

난 당신이 다른 색상과 스크롤 기능을 가진 GraphView에 GraphView

그러나 여러 시리즈에서 막대 그래프와 선 그래프를 혼합 할 수 없습니다 생각은 다음과 같다 : 열이있는 경우 때문에 가 (당신은 뷰포트에 대한 몇 가지 트릭을해야 할 것 이 1 개 단위의 폭을 갖는)

GraphView multiple series bar chart

MainActivity.java

01,235 - 도시,이 그래프에 맞게 표시 영역을 확장한다. 스 니펫에 대한 16,
public class MainActivity extends Activity { 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 

    GraphView graphView = new BarGraphView(this, "Graph Title"); 

    GraphViewData[] data1 = new GraphViewData[] { 
      new GraphViewData(1, 5.0d), 
      new GraphViewData(2, 3.0d), 
      new GraphViewData(3, 4.0d), 
      new GraphViewData(4, 3.0d), 
      new GraphViewData(5, 7.0d), 
      new GraphViewData(6, 6.0d), 
      new GraphViewData(7, 7.0d), 
      new GraphViewData(8, 2.0d), 
    }; 
    GraphViewSeriesStyle style1 = new GraphViewSeriesStyle(); 
    style1.setValueDependentColor(new ValueDependentColor() { 
     @Override 
     public int get(GraphViewDataInterface data) { 
      if(((int)data.getX())%2 == 0) { 
       return Color.rgb(200, 60, 0); 
      } 
      else { 
       return Color.rgb(60, 200, 0); 
      } 
     } 
    }); 
    GraphViewSeries series1 = new GraphViewSeries("Series 1", style1, data1); 

    graphView.setManualYAxisBounds(10,0); 
    graphView.setViewPort(1,3.99999); 
    graphView.setScrollable(true); 
    graphView.addSeries(series1); 
    LinearLayout layout = (LinearLayout) findViewById(R.id.graph1); 
    layout.addView(graphView); 
} 

activity_main.xml

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
xmlns:tools="http://schemas.android.com/tools" 
android:layout_width="match_parent" 
android:layout_height="match_parent" 
tools:context=".MainActivity"> 

<LinearLayout 
    android:id="@+id/graph1" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:orientation="horizontal"></LinearLayout> 

+0

안녕하세요, 감사합니다. 막대 사이에 여백을 추가하는 방법을 알고 있습니까? – redrom

+0

막대를 이동 된 x 좌표에 배치 해보십시오. '새로운 GraphViewData (1 5.0d)'' 새로운 GraphViewData (2 3.0d)'' 새로운 GraphViewData (3.5 4.0d)'' 새로운 GraphViewData (4.5 3.0d)'' new GraphViewData (6, 7.0d), ' ... 또는 라이브러리 소스 자체를 편집하고 거기에서 막대 너비를 변경하십시오. – Gyebro