[Excel] 묶은 세로 막대형 그래프 사용하기



데이터를 표현하는 묶은 세로 막대형에 대해서 알아보겠습니다.








문제는 번호에 따른 국어,수학,영어 점수 

묶은 세로 막대형임으로


X 축은 번호

Y축은 점수(국어, 수학, 영어)가 됩니다.




자, 첫번째 번호의 데이터 부분을 선택을 해줍니다.

그리고, 노란색 부분 국어 , 수학, 영어를 드래그를 해주어야합니다.

이때, 동시에 드래그가 되어야함으로 


빨간색을 먼저 드래그 하고,

Ctrl를 국어를 누른 후에 Shift를 눌러서 드래그를 합니다.



자, 천천히 해보죠.





그래프를 그려보도록 하겠습니다.






그리고, 묶은 세로 막대형을 그리시면 됩니다.







그러면 결과화면이 나옵니다.






예를 들어서 차트 제목을 바꾸려먼, 차트의 제목을 두번 클릭합니다.

그리고, 제목을 바꾸시면 됩니다.






제목을 없애버리면, 이런 식으로 그 부분을 표로 채워집니다.





그리고 차트에서 필요하신 요소를 바꿔야할 경우 

오른쪽에 보이는 요소들을 잘 사용하시면됩니다.





원본의 데이터가 바뀔 경우 그래프 값도 

변경되는 점도 알고 계셔야합니다.



블로그 이미지

미나미나미

,

안드로이드 webview 뒤로가기 

(webview canGoBack , goBack함수)



안드로이드 웹뷰에서 뒤로가기 버튼을 할때,

페이지가 있으면 돌아가고,

없을 경우 앱을 종료합니다.



@Override
public void onBackPressed() {
super.onBackPressed();
//WebVirwMain은 Webview webViewMain;
//webViewMain = (WebView) findViewById(R.id.Activity);
if (webViewMain.canGoBack()) { // 뒤로가기 눌렀을 때, 뒤로 갈 곳이 있을 경우
webViewMain.goBack(); // 뒤로가기
} else {//뒤로 갈 곳이 없는 경우
new AlertDialog.Builder(WebviewMain.this)
.setIcon(android.R.drawable.ic_dialog_alert)
.setTitle("종료!")
.setMessage("종료하시겠습니까?")
.setPositiveButton("확인", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
finish();
}
})
.setNegativeButton("아니오", null)
.show();
}
}





블로그 이미지

미나미나미

,

안드로이드 마시멜로(API23) 이상 권한 체크 획득하기


안드로이드에서 퍼미션을 사용하기 위해서 권한을 

체크하는 부분이 필요합니다.






1. 안드로이드에서 시작화면이나 onCrate()함수 시작할 때, 

권한 체크할 함수를 작성합니다.






2.  ManifestCheck.java에서 권한을 확인합니다.

(아래의 전체코드를 확인하세요.)

(또한, 여러개의 권한 요청은 전체코드에 표현되어 있습니다.)


권한의 체크 과정을 아래와 같은 이미지로 진행됩니다.



아래의 코드의 이미지에서는 rquestPermissions와

shouldShowRequestPermissionRational까지 되어 있습니다.







나머지 onRequestPermissionResult를 사용하기 위해서는 

MainActivity 쪽에서 아래에 코드를 작성해주시고,

ManifestCheck.java 쪽에 아래의 코드를 작성해주시면 됩니다.






결과화면





블로그 이미지

미나미나미

,

[Excel] DSUM 함수 사용하기



 ■  DSUM 함수 


DSUM( 데이터베이스 , 값을 찾을 구간 , 비교할 테이블의 제목과 값)  


데이터베이스 :

데이터들의 전체의 범위


비교할 범위내에서 조건:

값을 범위를 더할 범위


비교할 테이블의 제목과 값:

테이블에서 찾을 제목과 값



그러면 아래의 예제로 알아보도록 하겠습니다.








첫번째로 DSUM 함수의 사용할 데이터베이스( 데이터들의 전체의 범위를 지정.)









두번째로 DSUM 함수의 값을 찾을 구간.

여기서, 국어의 점수의 총합임으로 데이터의 집합의 

헤더의 값 "국어"라고 지정합니다.






세번째로 DSUM 함수의 비교할 테이블의 제목과 값.




수식 표시



결과화면




블로그 이미지

미나미나미

,

[Excel] 셀 데이터 막대 사용해보기



셀 안의 데이터의 크기에 따라서 표현 되는 

셀 데이터 막대를 사용해보도록 하겠습니다.








셀 데이터 막대를 표현할 셀들을 드래그 한 후,

홈 - 조건부 서식 - 데이터 막대를 선택합니다.


여기서는 추가적으로 막대 셀들의 스타일 존재함으로 

기타 규칙을 선택해줍니다.

기본 스타일 경우 선택하면 왼쪽의 빨간 부분처럼 됩니다.


조건부 서식 - 데이터 막대 - 기타 규칙





셀 데이터 막대를 표현할 셀들을 드래그 한 후,

홈 - 조건부 서식 - 데이터 막대를 선택합니다.


여기서는 추가적으로 막대 셀들의 스타일 존재함으로 

기타 규칙을 선택해줍니다.


서식스타일 : 막대 스타일

종류 : 숫자

최소값 0 , 최대값 100

채우기 색 : 주황핵

테두리 : 실선 테두리 , 검은색

막대 방향 : 오른쪽에서 왼쪽 






결과화면




블로그 이미지

미나미나미

,


[Excel] 데이터 유효성 검사 해보기



필드의 입력한 데이터의 유효하게 입력되게 하는 것입니다.




자, 아래의 예제를 통해서 데이터 유효성 검사를 해보겠습니다.





자, 유효성을 검증할 범위를 지정해주고,

위에 탭에서 데이터 - 데이터 유효성 검사 - 데이터 유효성 검사를 클릭합니다.




제한 대상에서  0 - 100 사이의 정수값만을 

고려할 것임으로 정수를 선택해주고, 

0 - 100 사이의 해당 범위로 최소값(0)과 최대값(100) 으로 지정해줍니다.





설명메세지


셀을 선택하면 설명 메시지 표시를 합니다. (안할 경우, 메시지 사용불가)

셀의 설명할 내용을 제목과 메시지를 작성하고 확인을 합니다.



설명메시지 설정시 아래와 같은 그림으로 표현됩니다.




오류메세지


오류 메시지 표시 유무를 확인합니다. 안할시 데이터 유효성 검사를 하지 않습니다.

여기서 스타일은 아이콘의 모양을 의미합니다.

셀의 오류시 내용을 제목과 메시지를 작성하고 확인을 합니다.




오류메시지 설정시 데이터가 유효하지 않은 경우 아래와 같은 그림으로 표현됩니다.






블로그 이미지

미나미나미

,

[java] url로 json 값 가져오기.



java URL로 json 값을 가져오겠습니다.



1. 특정 json 값을 가져올 수 있는 url이 존재해야합니다.


# soundcloud에서 Json 값을 가져오 겠습니다.

http://soundcloud.com/oembed?url=http%3A//soundcloud.com/forss/flickermood&format=json

String getJson = callURL("http://soundcloud.com/oembed?url=http%3A//soundcloud.com/forss/flickermood&format=json");


# URL 접속시 Json 값을 가져옵니다.






2. Json 읽어오기 위해서 특별한 Class를 생성하고, 메소드로 callURL 메소드를 생성합니다. 여기서 빠르게 처리하기 위해서 "static"으로 만들었음을 주의하세요.


import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.net.URL;
import java.net.URLConnection;
import java.nio.charset.Charset;
import javax.net.ssl.HostnameVerifier;
import javax.net.ssl.HttpsURLConnection;
import javax.net.ssl.SSLSession;

public class JsonReader {
public static String callURL(String myURL) {

System.out.println("Requeted URL:" + myURL);
StringBuilder sb = new StringBuilder();
URLConnection urlConn = null;
InputStreamReader in = null;

//error : Caused by: javax.net.ssl.SSLPeerUnverifiedException: Hostname not verified:
HostnameVerifier allHostsValid = new HostnameVerifier() {
@Override
public boolean verify(String hostname, SSLSession session) {
//특정 hostname만 승인을 해주는 형태
return true;
}
};
//
HttpsURLConnection.setDefaultHostnameVerifier(allHostsValid);

try {
URL url = new URL(myURL);
urlConn = url.openConnection();
if (urlConn != null)
urlConn.setReadTimeout(60 * 1000);
if (urlConn != null && urlConn.getInputStream() != null) {
in = new InputStreamReader(urlConn.getInputStream(), Charset.defaultCharset());
//charset 문자 집합의 인코딩을 사용해 urlConn.getInputStream을 문자스트림으로 변환 객체를 생성.
BufferedReader bufferedReader = new BufferedReader(in);
//주어진 문자 입력 스트림 inputStream에 대해 기본 크기의 버퍼를 갖는 객체를 생성.
if (bufferedReader != null) {
int cp;
while ((cp = bufferedReader.read()) != -1) {
sb.append((char) cp);
}
bufferedReader.close();
}
}
in.close();
} catch (Exception e) {
throw new RuntimeException("Exception URL:"+ myURL, e);
}
return sb.toString();
}
}






3. 결과화면



받은 문자를 json으로 확인.







블로그 이미지

미나미나미

,

[java] javax.net.ssl.SSLPeerUnverifiedException: Hostname not verified:



java URL conn 할 때, SSL 인증서 문제로

인한 Error 처리하기.




아래의 코드를 통해서  SSL인증 무시하기 위해서 내가 우회하고자 하는 url 주소를 "127.0.0.1" 부분에 넣어줍니다.


//error : Caused by: javax.net.ssl.SSLPeerUnverifiedException: Hostname not verified:
HostnameVerifier allHostsValid = new HostnameVerifier() {
@Override
public boolean verify(String hostname, SSLSession session) {
//특정 hostname만 승인을 해주는 형태
if(hostname.equalsIgnoreCase("127.0.0.1")) //내가 우회하고자하는 url 주소를 넣어준다.
return true;
else
return false;
}
};

HttpsURLConnection.setDefaultHostnameVerifier(allHostsValid);




블로그 이미지

미나미나미

,