{"id":3440,"url":"https://github.com/lecho/hellocharts-android","last_synced_at":"2025-12-16T14:57:01.009Z","repository":{"id":21792262,"uuid":"25114751","full_name":"lecho/hellocharts-android","owner":"lecho","description":"Charts library for Android compatible with API 8+, several chart types with scaling, scrolling and animations 📊","archived":false,"fork":false,"pushed_at":"2021-06-01T03:12:09.000Z","size":6126,"stargazers_count":7794,"open_issues_count":293,"forks_count":1609,"subscribers_count":271,"default_branch":"master","last_synced_at":"2025-11-27T14:28:37.406Z","etag":null,"topics":["android","chart"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":"mRemoteNG/mRemoteNG","license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/lecho.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2014-10-12T09:12:37.000Z","updated_at":"2025-11-25T04:47:54.000Z","dependencies_parsed_at":"2022-07-14T09:22:32.175Z","dependency_job_id":null,"html_url":"https://github.com/lecho/hellocharts-android","commit_stats":null,"previous_names":[],"tags_count":14,"template":false,"template_full_name":null,"purl":"pkg:github/lecho/hellocharts-android","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lecho%2Fhellocharts-android","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lecho%2Fhellocharts-android/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lecho%2Fhellocharts-android/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lecho%2Fhellocharts-android/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/lecho","download_url":"https://codeload.github.com/lecho/hellocharts-android/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lecho%2Fhellocharts-android/sbom","scorecard":{"id":582295,"data":{"date":"2025-08-11","repo":{"name":"github.com/lecho/hellocharts-android","commit":"c41419c9afa097452dee823c7eba0e5136aa96bd"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":2.6,"checks":[{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Maintained","score":0,"reason":"0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Token-Permissions","score":-1,"reason":"No tokens found","details":null,"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Dangerous-Workflow","score":-1,"reason":"no workflows found","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Code-Review","score":2,"reason":"Found 6/27 approved changesets -- score normalized to 2","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Binary-Artifacts","score":7,"reason":"binaries present in source code","details":["Warn: binary detected: formatter/CodeStyle-HelloCharts.jar:1","Warn: binary detected: gradle/wrapper/gradle-wrapper.jar:1","Warn: binary detected: hellocharts-library/libs/android-support-v4.jar:1"],"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Pinned-Dependencies","score":-1,"reason":"no dependencies found","details":null,"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE.txt:0","Info: FSF or OSI recognized license: Apache License 2.0: LICENSE.txt:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"Signed-Releases","score":0,"reason":"Project has not signed or included provenance with any releases.","details":["Warn: release artifact v1.5.8 not signed: https://api.github.com/repos/lecho/hellocharts-android/releases/1873824","Warn: release artifact v1.5.7 not signed: https://api.github.com/repos/lecho/hellocharts-android/releases/1758207","Warn: release artifact v1.5.6 not signed: https://api.github.com/repos/lecho/hellocharts-android/releases/1489930","Warn: release artifact v1.5.5 not signed: https://api.github.com/repos/lecho/hellocharts-android/releases/1305568","Warn: release artifact v1.5.4 not signed: https://api.github.com/repos/lecho/hellocharts-android/releases/1250621","Warn: release artifact v1.5.8 does not have provenance: https://api.github.com/repos/lecho/hellocharts-android/releases/1873824","Warn: release artifact v1.5.7 does not have provenance: https://api.github.com/repos/lecho/hellocharts-android/releases/1758207","Warn: release artifact v1.5.6 does not have provenance: https://api.github.com/repos/lecho/hellocharts-android/releases/1489930","Warn: release artifact v1.5.5 does not have provenance: https://api.github.com/repos/lecho/hellocharts-android/releases/1305568","Warn: release artifact v1.5.4 does not have provenance: https://api.github.com/repos/lecho/hellocharts-android/releases/1250621"],"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'master'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 9 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}}]},"last_synced_at":"2025-08-20T19:29:25.472Z","repository_id":21792262,"created_at":"2025-08-20T19:29:25.472Z","updated_at":"2025-08-20T19:29:25.472Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":27766693,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-12-16T02:00:10.477Z","response_time":57,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["android","chart"],"created_at":"2024-01-05T20:16:41.614Z","updated_at":"2025-12-16T14:57:00.990Z","avatar_url":"https://github.com/lecho.png","language":"Java","readme":"# HelloCharts for Android\n\nCharting library for Android compatible with API 8+(Android 2.2).\nWorks best when hardware acceleration is available, so API 14+(Android 4.0) is recommended.\nApache License 2.0.\n\n[![Android Arsenal](https://img.shields.io/badge/Android%20Arsenal-HelloCharts%20for%20Android-brightgreen.svg?style=flat)](https://android-arsenal.com/details/1/1068)\n\u003ca href=\"https://scan.coverity.com/projects/4121\"\u003e\n  \u003cimg alt=\"Coverity Scan Build Status\"\n       src=\"https://scan.coverity.com/projects/4121/badge.svg\"/\u003e\n\u003c/a\u003e\n[![Maven Central](https://maven-badges.herokuapp.com/maven-central/com.github.lecho/hellocharts-library/badge.svg)](https://maven-badges.herokuapp.com/maven-central/com.github.lecho/hellocharts-library)\n[![Release](https://img.shields.io/github/release/lecho/hellocharts-android.svg?label=JitPack.io)](https://jitpack.io/#lecho/hellocharts-android)\n\n## Features\n\n - Line chart(cubic lines, filled lines, scattered points)\n - Column chart(grouped, stacked, negative values)\n - Pie chart\n - Bubble chart\n - Combo chart(columns/lines)\n - Preview charts(for column chart and line chart)\n - Zoom(pinch to zoom, double tap zoom), scroll and fling\n - Custom and auto-generated axes(top, bottom, left, right, inside)\n - Animations\n\n## Screens and Demos\n\n - Code of a demo application is in `hellocharts-samples` directory, requires appcompat v21. \n - The **demo app** is also ready for download on [**Google Play**](https://play.google.com/store/apps/details?id=lecho.lib.hellocharts.samples).  \n - Short **video** is available on [**YouTube**](https://www.youtube.com/watch?v=xbSBjyjH2SY).\n\n![](screens/scr_dependecy_preview.gif)\n\n![](screens/scr-tempo.png)\n\n![](screens/scr-dependency.png)\n\n![](screens/scr-preview-column.png)\n\n![](screens/scr-pie1.png)\n\n![](screens/scr-bubble1.png)\n\n![](screens/scr-combo.png)\n\n## Download and Import\n\n#### Android Studio/Gradle\n\n - Maven Central/jCenter, add dependency to your `build.gradle`:\n \n ```groovy\n\tdependencies{\n \t\tcompile 'com.github.lecho:hellocharts-library:1.5.8@aar'\n\t}\n ```\n \n - JitPack.io, add `jitpack.io` repositiory and dependency to your `build.gradle`:\n \n ```groovy\n    repositories {\n        maven {\n            url \"https://jitpack.io\"\n        }\n    }\n\t\n    dependencies {\n        compile 'com.github.lecho:hellocharts-android:v1.5.8'\n    }\n ```\n \n#### Eclipse/ADT\n\n - Download the latest [release jar file](https://github.com/lecho/hellocharts-android/releases).\n - Copy `hellocharts-library-\u003cversion\u003e.jar` into the `libs` folder of your application project.\n\n## Usage\n\nEvery chart view can be defined in layout xml file:\n\n ```xml\n    \u003clecho.lib.hellocharts.view.LineChartView\n        android:id=\"@+id/chart\"\n        android:layout_width=\"match_parent\"\n        android:layout_height=\"match_parent\" /\u003e\n ```\n\n or created in code and added to layout later:\n\n ```java\n    LineChartView chart = new LineChartView(context);\n    layout.addView(chart);\n ```\n\n Use methods from *Chart classes to define chart behaviour, example methods:\n\n ```java\n    Chart.setInteractive(boolean isInteractive);\n    Chart.setZoomType(ZoomType zoomType);\n    Chart.setContainerScrollEnabled(boolean isEnabled, ContainerScrollType type);\n ```\n\n Use methods from data models to define how chart looks like, example methods:\n\n ```java\n    ChartData.setAxisXBottom(Axis axisX);\n    ColumnChartData.setStacked(boolean isStacked);\n    Line.setStrokeWidth(int strokeWidthDp);\n ```\n\n Every chart has its own method to set chart data and its own data model, example for line chart:\n\n ```java\n    List\u003cPointValue\u003e values = new ArrayList\u003cPointValue\u003e();\n    values.add(new PointValue(0, 2));\n    values.add(new PointValue(1, 4));\n    values.add(new PointValue(2, 3));\n    values.add(new PointValue(3, 4));\n\n    //In most cased you can call data model methods in builder-pattern-like manner.\n    Line line = new Line(values).setColor(Color.BLUE).setCubic(true);\n    List\u003cLine\u003e lines = new ArrayList\u003cLine\u003e();\n    lines.add(line);\n\n    LineChartData data = new LineChartData();\n    data.setLines(lines);\n\n\tLineChartView chart = new LineChartView(context);\n    chart.setLineChartData(data);\n ```\n\n After the chart data has been set you can still modify its attributes but right after that you should call\n `set*ChartData()` method again to let chart recalculate and redraw data. There is also an option to use copy constructor for deep copy of\n chart data. You can safely modify copy in other threads and pass it to `set*ChartData()` method later.\n\n\n## Contributing\n\nYes:) If you found a bug, have an idea how to improve library or have a question, please create new issue or comment existing one. If you would like to contribute code fork the repository and send a pull request.\n\n# License\n\n\tHelloCharts\t\n    Copyright 2014 Leszek Wach\n\n    Licensed under the Apache License, Version 2.0 (the \"License\");\n    you may not use this file except in compliance with the License.\n    You may obtain a copy of the License at\n\n       http://www.apache.org/licenses/LICENSE-2.0\n\n    Unless required by applicable law or agreed to in writing, software\n    distributed under the License is distributed on an \"AS IS\" BASIS,\n    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n    See the License for the specific language governing permissions and\n    limitations under the License.\n\n---\n     HelloCharts library uses code from InteractiveChart sample available \n     on Android Developers page:\n\t \n       http://developer.android.com/training/gestures/scale.html\n","funding_links":[],"categories":["Index `(light-weight pages)`","[Programming]","Libraries","图表(Chart)","Java","Uncategorized","Android 应用","Index","Libs"],"sub_categories":["[Programming] - [Android]","Charts","Uncategorized","网络服务_其他","\u003cA NAME=\"Chart\"\u003e\u003c/A\u003eChart"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flecho%2Fhellocharts-android","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flecho%2Fhellocharts-android","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flecho%2Fhellocharts-android/lists"}