2013년 8월 4일 일요일

Android グラフチャートライブラリ - Essence Chart(エッセンス チャート)ライブラリの始め方

アプリを開発する際に、格好いいグラフやチャートを入れてみるのはいかかですか?

Android Essence Chart(エッセンス チャート) ライブラリを使うと2D/3Dのグラフやチャートを簡単に作ることができます。

この文書は Essence Chart(エッセンス チャート) というライブラリを始めて使う開発者が分かりやすく学べるように作成されたガイドです。


Essence Chart(エッセンス チャート)の特徴は以下となります。

  • Essence Chart ライブラリは様々なグラフやチャートをサポートしています.                                   サポートするグラフやチャートの種類は Essence Chart がサポートするグラフの種類 にて確認できます.
  • Essence Chart ライブラリはファイルサイズが小さいです。
  • Android用 ライブラリの場合、ファイルサイズは3MB位です。
  • Essence Chart ライブラリは様々なOSを対応しております。
    現在 Android向けのみ提供しておりますが、今後、Window向け, iOS向けも提供する予定です。.
  • Essence Chart ライブラリは無料で使えます.
    Essence Chart
    ライブラリのライセンスは Essence Chart(エッセンス チャート) ライセンスにて 確認できます.


エッセンスチャートを始めるためには必ず Essence Chart SDKをインストールしなければなりません。
インストールは Essence Chart(エッセンスチャート) SDK インストールにて確認できます.
image

Android 始めよう – 1段階(Chartの生成)

Essence Chart ライブラはAndroidで使えるJAR(Java Archive)を提供します。
Android
で楽で簡単にChartを生成することができます。
現在、Androidでは以下のようにサポートされております。
  • ·         SDKをインストールするプログラム
    ·         AndroidのJARファイルを提供
    ·         サポート Device : armebai-v7, armebai(armebaiは今後サポートされる予定)
    ·         SDK Demo APP 提供(Google Playに登録される予定)
    ·         Min SDK Version : Android 2.3.3(API 10)
    ·         動作が確認できた Device
    o    サムスン GALAXY S2(Android 4.1.2, Jelly bean)
    o    サムスン GALAXY S3(Android 4.1.2, Jelly bean)
    o    サムスン GALAXY Note 10.1(Android 4.1.2, Jelly bean)
    o    LGエレクトロニクス Optimus G pro (Android 4.1.2, Jelly bean)
    o    グーグル Nexus7(Android 4.2.2, Jelly bean)
    o    グーグル Nexus10(Android 4.2.2, Jelly bean)
    ·         一部のDeviceで正常に動作できない場合があります。
    o    現在armebai-v7のみサポートできます。
    o    Android OSのパージョンによって上手く起動できない場合があります。
    ·         お問い合わせはブログへコメントを残すことでお願いします。

    Android
    を始める前に次の項目をご確認してください。
    ·         Eclipseのインストールを確認
    o    Eclipse Classic 3.7.2で始めようが作成されております。
    o    他のパージョン(上位バージョン)で開発するのもできますが、この文書は3.7.2を基準として説明されてますので、メニューや項目が異なる場合があります。
    o    Eclipseのインストールに関してはネット上にあるEclipseインストールしようなどのページをご参照してください。.
    ·         Android SDKのインストールを確認
    o    Androidを始めようはAndroidのSDKがインストールされていないと進めることができません。
    o    Androidの開発者のサイトでダウンロードできます。
    o    Android SDKに関してはネット上にあるAndroid SDKインストール関連サイトをご参照してインストールしてください。
    ·         Essence Chart のインストールを確認
    o    Androidを始めようはEssence Chart SDKがインストールされていないと進めることができません。
    o    Essence Chart(エッセンスチャート) SDKのインストール をご参照してインストールを確認してください。.

    下記のイメージで表記されたバージョンはアップデートによりバージョンが異なる場合があります。

Androidアプリを生成する


eclipse.exeを実行してEclipseを起動します。

image

File –> New –> Other を選択します。
image

Android –> Android Application Projectを選択し“Next” ボタンを押します。
image

Application Name, Project Name, Package Nameを入力します。
Minimum Required SDK
項目は API 9: Android 2.3(Gingerbread)を選択します。
Target SDK, Compile With, Theme
は状況に合わせて選択します。
“Next”
ボタンを押します。
image


Create custom launcher icon, Create activity, Create Project in Workspace
項目にチェックをかける.
”Next”
ボタンを押します。
image

アイコンのイメージの情報を設定する。.
”Next”
ボタンを押します。
image

Create ActiveにチェックをかけBlankActivityを選択する。
”Next”
ボタンを押します。
image

Activeity Name, Layout Name 項目の毎に値を入力する。
(始めようではデフォールト値を使うので、もし他の値を使うと項目名が異なる場合があります。)
”Finish”
を押します.
image

Essence ChartのSDKをコピー


インストールしたEssence Chart SDKのフォルダでJARファイルlibraryフォルダをコピーする。

Windowsエクスプローラを実行し、 Essence Chart SDKフォルダへ移動する。
デフォルトインストールパスは以下になります。

·         Window 32bit : C:\Program Files\Essence Chart SDK\sdk\android

·         Window 64bit : C:\Program Files (x86)\Essence Chart SDK\sdk\android

image

“armebai-v7a” フォルダと“essence.chart.0.7.6.jar” ファイルをコピーする。 image

コピーしたファイルをEclipseのChart Projcetのlibsというフォルダにコピーする。
image

コピーが終わったら、 libs ファルダに“armebai-v7a” ファルダと“essence.chart.0.7.6.jar” ファイルが子ぷーされたことを確認する。
 image


Layoutにchartを追加する

Eclipse에서 res/layout/activity_main.xmlファイルを選択する。
(activity_main.xml
はProjcetを生成する時に指定したファイルである)
image

activeity_main.xmlのactivity_main.xmlのタブを選択する。
(Graphical Layout
の隣にあるactivity_main.xmlタブを選択)
image

TextViewの項目を次のように変更する。
変更の前

変更の後
<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" >
    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerHorizontal="true"
        android:layout_centerVertical="true"
        android:text="@string/hello_world" />
</RelativeLayout>

<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" >
    <com.essence.chart.Chart
        android:id="@+id/chart01"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" />
</RelativeLayout>


imageimage

修正した内容を保存する。
メニューのProject->Cleanを押下し、Clean all projectsを選択する。
image

Chartのアプリを実行

保存されたProjectを実行し、Chartが正常的に生成が完了されたのか確認する。

Eclipse
のtoolbarのRunボタンを押します。
Run Asの窓が立ち上がると“Android Application”を選択後、“OK”ボタンを選択する。
image

正常的にビルドされたら Android Device Chooserが表示されます。.
Android Device Chooserで望むDeviceを選択し、“OK” ボタンを押します。

image

正常的に実行されたら Deviceに下記のようなChartアプリが実行されます。

·         サムスン GALAXYS2

image

  • サムスン GALAXY Note 10.1
image

  • Google Nexus7
image

Android Essence Chart(エッセンス チャート)のライセンスについて

誰でも無償で無制限に扱って良いのかについて気になる方が多いと思いますが、
Essence Chartはその自体に対するソースコードを提供していないためMIT Licenseと似ていると考えてください。 
ここでライセンスとはEssence Chartのライブラリに対するライセンスを言います.

MIT Licenseをもっと簡単に説明すると、商用プログラムで携わっても構いませんし、
独占プログラム(非公開ソース)で使うこともできます。バグ・パッチ及び機能を拡張して公開する義務もありませんし, 
ご自由に携わって使えるライセンスなのです.

但し、Essence Chartそのものに対するライセンスの再伝播することは許しておりません。(そんな方はいないと思いますが...)

ライセンスというのは元々難しくてこの文書をみても白か黒か分かりにくいと思いますが、
次の場合ご心配なく携わっても良いという意味です。
• 自分だけの償用アプリを作る時にEssence Chartのライブラリを適用する. - No Problem!
• 顧客の依頼を受けてアプリを開発することでEssence Chartを含める - No Problem!

MITライセンスの全文を以下に示します。
License

The MIT License
Copyright (c) 2009, Concrete CMS, inc.

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

日本語訳
この日本語訳は、皆様が理解しやすいようにと掲載させていただきましたが、上記の英語が元になります。再配布の際は、日本語訳ではなく、英語の原文を元にして使って下さい。
参考記事:オープンソースグループ・ジャパンによる日本語参考訳

License

The MIT License
Copyright (c) 2008, Concrete CMS, inc.

以下に定める条件に従い、本ソフトウェアおよび関連文書のファイル(以下「ソフトウェア」)の複製を取得するすべての人に対し、ソフトウェアを無制限に扱うことを無償で許可します。これには、ソフトウェアの複製を使用、複写、変更、結合、掲載、頒布、サブライセンス、および/または販売する権利、およびソフトウェアを提供する相手に同じことを許可する権利も無制限に含まれます。

上記の著作権表示および本許諾表示を、ソフトウェアのすべての複製または重要な部分に記載するものとします。

ソフトウェアは「現状のまま」で、明示であるか暗黙であるかを問わず、何らの保証もなく提供されます。ここでいう保証とは、商品性、特定の目的への適合性、および権利非侵害についての保証も含みますが、それに限定されるものではありません。 作者または著作権者は、契約行為、不法行為、またはそれ以外であろうと、ソフトウェアに起因または関連し、あるいはソフトウェアの使用またはその他の扱いによって生じる一切の請求、損害、その他の義務について何らの責任も負わないものとします。

2013년 7월 10일 수요일

Android Chart Library

Android Chart Library
안드로이드 차트 라이브러리
Android グラフチャートライブラリ

Essence Chart Library
에센스 차트 라이브러리
エッセンスグラフチャートライブラリ

좌측 메뉴에서 언어를 선택하세요. -->
Select Language in Left menu -->
左のメニューから言語を選んでください -->

2013년 7월 9일 화요일

Android エッセンス チャート(Essence Chart)がサポートするグラフの種類

Android エッセンス チャート(Essence Chart)では様々な種類のチャート(グラフ)がサポートされています。
今後ともサポートする チャート(グラフ)が追加される予定です。
現在、サポートされているグラフの種類は以下のようなものがあります。

s   縦棒グラフ
w   集合縦棒
w   積み上げ縦棒
w   100% 積み上げ縦棒
w   3-D 縦棒グラフ
w   3-D 集合縦棒
w   3-D 100% 積み上げ縦棒
s   折れ線グラフ
w   折れ線グラフ
w   積み上げ折れ線
w   マーカー付き折れ線
w   3-D 折れ線
s   円グラフ
w   円グラフ
w   分割円
w   3-D 効果付き円
w   3-D 効果付き分割円
s   横棒グラフ
w   集合横棒
w   積み上げ横棒
w   100% 積み上げ横棒
w   3-D 効果付き 集合横棒
w   3-D 効果付き 積み上げ横棒
w   3-D 効果付き 100% 積み上げ横棒
s   面グラフ
w   面グラフ
w   100% 積み上げ面
w   3-D 面
w   3-D 効果付き 100% 積み上げ面
s   散布図
w   散布図 (マーカーなし)
w   直線付き散布図 (マーカー付き)
w   直線付き散布図
s   株価チャート
w   高値 - 安値 - 終値
w   始値 - 高値 - 安値 - 終値
s   等高線グラフ
w   等高線
w   3-D 等高線
s   ドーナツ グラフ
w   3-D ドーナツ
w   3-D 分割ドーナツ
s   バブル チャート
w   バブル
s   レーダー チャート
w   レーダー (マーカーなし)
w   レーダー (マーカー付き)
s   複合グラフ
w   複合グラフ
w   3-D 複合グラフ

Android グラフチャートライブラリ-Essence Chart(エッセンス グラフチャート) ダウンロード

アンドロイドEssence Chart(エッセンスグラフチャート)をダウンロードできます。
管理性を高めるため、古いバージョンのファイルを削除する場合があります。



Android グラフチャートライブラリ-Essence Chart(エッセンス グラフチャート)SDKのサンプルコード

Essence Chart SDK Sample App Source

エッセンスグラフチャートSDKのアプリのサンプルコード.
("Stefano Falasca"さん 探していましたソースコードを今になって公開します。)

下記のアドレスからAndroid ストアに登録されたアプリの
サンプルコードをダウンロードできます。
サンプルコードはgithubを通してアップグレードされます。

お問い合わせはブログに残してください。


2013년 7월 1일 월요일

안드로이드 차트 라이브러리 - Essence Chart(에센스 차트) 변경 내용

안드로이드 Android Essence Chart SDK Change Log

SDK가 업데이트 되면 이곳에 공지합니다.
현재 개발 중인 내용도 참고하실 수 있습니다.

  • Essence Chart SDK 1.0.0 - 2014-04-18
    • 워터마크 추가.
    • 색상 탬플릿 두개 추가.
    • 기본 색상 탬플릿의 색상 변경.

  • Essence Chart SDK 0.8.1 - 2014-03-19
    • 차트 컨트롤 옵션 추가
      •  채우기 속성 추가
        •  종류(없음, 단일선, 이중선, 내부 굵은 이중선, 외부 굵은 이중선)
        •  색상 지정
    • 차트 영역 옵션 추가
      •  채우기 속성 추가
        • 채우기(없음, 단색)
        • 채우기 색(색상 지정)
    • 제목 옵션 추가
      • 채우기 속성 추가
        • 채우기(없음, 단색)
        • 채우기 색(색상 지정)
        • 테두리(없음, 실선)
        • 테두리 색(색상 지정)
    • 범례 옵션 추가
      • 채우기 속성 추가
        • 채우기(없음, 단색)
        • 채우기 색(색상 지정)
    • X축 제목 옵션 추가
      • 채우기 속성 추가
        • 채우기(없음, 단색)
        • 채우기 색(색상 지정)
        • 테두리(없음, 실선)
        • 테두리 색(색상 지정)
    • Y축 제목 옵션 추가
      • 채우기 속성 추가
        • 채우기(없음, 단색)
        • 채우기 색(색상 지정)
        • 테두리(없음, 실선)
        • 테두리 색(색상 지정)
    • Y2축 제목 옵션 제공
      • 제목 입력
      • 글꼴
      • 채우기 속성 추가
        • 채우기(없음, 단색)
        • 채우기 색(색상 지정)
        • 테두리(없음, 실선)
        • 테두리 색(색상 지정)
    • Z축 제목 옵션 추가
      • 채우기 속성 추가
        • 채우기(없음, 단색)
        • 채우기 색(색상 지정)
        • 테두리(없음, 실선)
        • 테두리 색(색상 지정)
    • 데이터 옵션 제공
      • 열 데이터 속성 추가
        • 열 데이터 별, 모든 열 데이터 속성 설정 기능 제공
        • 열 데이터 숨기기, 열 데이터 제외하기 설정 제공
      • 행 데이터 속성 추가
        • 행 데이터 별, 모든 행 데이터 속성 설정 기능 제공
    • 오류 수정
      • Chart.setSourceData API 오류 수정


  • Essence Chart SDK 0.7.13 - 2013-08-09
    • 차트 컨트롤 옵션
      • 테두리 "없음"을 기본 값으로 변경
      • 채우기 속성 지원
    • 차트 제목 옵션
      • 글꼴 "스트일-굵게, 크기-24"를 기본값으로 변경
      • 채우기 속성 지원
    • 차트 영역 옵션
      • 테두리 "없음"을 기본 값으로 변경
      • 채우기 속성 지원
    • 차트 범례 옵션
      • 범례 보기를 기본 값으로 변경
      • 테두리 설정 기능 추가
      • 채우기 속성 지원
    • 차트 축 옵션
      • 채우기 속성 지원
      • 두번째 Y축 지원
    • 차트 데이터 옵션
      • 열 데이터 속성
        • 열 데이터 숨기기
        • 열데이터 제외하기
      • 행 데이터 속성
        • 위치 속성
        • 채우기 속성
        • 데이터 형식 속성
        • 백분율 형식 속성

  • Essence Chart SDK 0.7.12
    • 차트 컨트롤 옵션
      • 배경 그림 지정(PNG)
    • 차트 영역 옵션 제공
      • 배경 그림 지정(PNG)

  • Essence Chart SDK 0.7.11
    • 차트 컨트롤 옵션
      • 테두리 보기/숨기기 기능
    • 차트 영역 옵션 제공
      • 테두리 보기/숨기기 기능
    • 차트 제목 옵션 제공
      • 텍스트 입력
      • 보기/숨기기
      • 위치 설정
      • 글꼴 설정(크기, 색상)
    • 차트 축 옵션 제공
      • X, Y, Z 축 지원
      • 축 제목 입력
      • 보기/숨기기
      • 글꼴 설정(크기, 색상)

  • Essence Chart SDK 0.7.10
    • 차트 범례 옵션 제공
      • 범례 위치(위쪽, 아래쪽, 왼쪽, 오른쪽, 오른쪽 위)
      • 글꼴 설정(크기, 색상)

  • Essence Chart SDK 0.7.9
    • Data Queue 기능 제공
      • 꺽은선형 그래프에만 적용 가능
    • 다국어 - 일본어(日本語) 지원


  • Essence Chart SDK 0.7.8
    • 설치 프로그램 제공
    • Android 
      • ARMEBAI-V7 지원(ARMEBAI는 추후 지원 예정)
      • Essence Chart SDK Sample App 제공(버전 0.7.8)
      • JAVA interface 제공(JAR로 제공)
      • 시작하기  제공
      • 지원 하는 차트 유형
        • 세로 막대형
          • 묶은 세로 막대형
          • 누적 세로 막대형
          • 100% 기준 누적 세로 막대형
          • 3차원 묶은 세로 막대형
          • 3차원 누적 세로 막대형
          • 3차원 100% 기준 누적 세로 막대형
        • 꺽은선형
          • 꺽은선형
          • 누적 꺽은선형
          • 표식이 있는 꺽은선형
          • 3차원 꺽은선형
        • 원형
          • 원형
          • 쪼개진 원형
          • 3차원 원형
          • 3차원 쪼개진 원형
        • 가로 막대형
          • 묶은 가로 막대형
          • 누적 가로 막대형
          • 100% 기준 누적 가로 막대형
          • 3차원 묶은 가로 막대형
          • 3차원 누적 가로 막대형
          • 3차원 100% 기준 누적 가로 막대형
        • 영역형
          • 영역형
          • 100% 기준 누적 영역형
          • 3차원 영역형
          • 3차원 100% 기준 누적 영역형
        • XY(분산형)
          • 표식만 있는 분산형
          • 직선 및 표식이 있는 분산형
          • 직선이 있는 분산형
        • 주식형
          • 고가-저가-종가
          • 시가-고가-저가-종가
        • 표면형
          • 표면형(조감도)
          • 3차원 표면형
        • 도넛형
          • 3차원 도넛형
          • 3차원 쪼개진 도넛형
        • 거품형
          • 거품형
        • 방사형
          • 방사형
          • 표식이 있는 방사형
        • 콤보 차트
          • 2차원 콤보
          • 3차원 콤보
      • 주요 기능
        • 크기, 회전(XY), 원근감 설정 지원
        • 범례 보기/숨기기 지원
        • 애니메이션(묶은 세로 막대형/3차원 세로 막대형/묶은 가로 막대형/3차원 묶은 가로 막대형 차트)
        • 색상 탬플릿 지원
        • 한글 지원
        • 허니컴(Android 3.2) 이하 버전에서 한글 지원
    • Window
      • 추후 지원 예정


  • Essence Chart SDK 0.7.7
    • 설치 프로그램 제공
    • Android 
      • ARMEBAI-V7 지원(ARMEBAI는 추후 지원 예정)
      • Essence Chart SDK Sample App 제공(버전 0.7.7)
      • JAVA interface 제공(JAR로 제공)
      • 시작하기  제공
      • 지원 하는 차트 유형
        • 세로 막대형
          • 묶은 세로 막대형
          • 누적 세로 막대형
          • 100% 기준 누적 세로 막대형
          • 3차원 묶은 세로 막대형
          • 3차원 누적 세로 막대형
          • 3차원 100% 기준 누적 세로 막대형
        • 꺽은선형
          • 꺽은선형
          • 누적 꺽은선형
          • 표식이 있는 꺽은선형
          • 3차원 꺽은선형
        • 원형
          • 원형
          • 쪼개진 원형
          • 3차원 원형
          • 3차원 쪼개진 원형
        • 가로 막대형
          • 묶은 가로 막대형
          • 누적 가로 막대형
          • 100% 기준 누적 가로 막대형
          • 3차원 묶은 가로 막대형
          • 3차원 누적 가로 막대형
          • 3차원 100% 기준 누적 가로 막대형
        • 영역형
          • 영역형
          • 100% 기준 누적 영역형
          • 3차원 영역형
          • 3차원 100% 기준 누적 영역형
      • 주요 기능
        • 크기, 회전(XY), 원근감 설정 지원
        • 범례 보기/숨기기 지원
        • 애니메이션(묶은 세로 막대형/3차원 세로 막대형/묶은 가로 막대형/3차원 묶은 가로 막대형 차트)
        • 한글 지원
    • 오류 수정 
      • 허니컴(Android 3.2)에서 죽는 오류 수정
    • Window
      • 추후 지원 예정


  • Essence Chart SDK 0.7.6
    • 설치 프로그램 제공
    • Android 
      • ARMEBAI-V7 지원(ARMEBAI는 추후 지원 예정)
      • Essence Chart SDK Sample App 제공(버전 0.7.6)
      • JAVA interface 제공(JAR로 제공)
      • 시작하기  제공
      • 주요 기능
        • 묶은 세로 막대형 차트
        • 3차원 세로 막대형 차트
        • 꺽은선형 차트
        • 3차원 꺽은선형
        • 원형 차트
        • 3차원 원형 차트
        • 묶은 가로 막대형 차트
        • 3차원 묶은 가로 막대형 차트
        • 크기, 회전(XY), 원근감 설정 지원
        • 범례 보기/숨기기 지원
        • 애니메이션(묶은 세로 막대형/3차원 세로 막대형/묶은 가로 막대형/3차원 묶은 가로 막대형 차트)
    • Window
      • 추후 지원 예정