1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/chinasoft3_ohos-AAChartCore

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Это зеркальный репозиторий, синхронизируется ежедневно с исходного репозитория.
Клонировать/Скачать
Внести вклад в разработку кода
Синхронизировать код
Отмена
Подсказка: Поскольку Git не поддерживает пустые директории, создание директории приведёт к созданию пустого файла .keep.
Loading...
README.md

AAChartCore

Проект AAChartCore

  • Проект: AAChartCore — это открытый исходный код для создания диаграмм.
  • Серия: компонент, адаптированный для openharmony.
  • Функция: создание диаграмм.
  • Состояние переноса: основные функции реализованы.
  • Вызовы: отсутствуют.
  • Версия разработки: SDK6, DevEco Studio2.2 beta1.
  • Базовая версия: master-ветка.

Демонстрация эффекта

Линейная диаграмма Столбчатая диаграмма Диаграмма с областями
![screen1](./image/aachartcore.gif «Демонстрация эффекта»)
Гистограмма Площадь диаграммы Сплайн-диаграмма
![LineChart](./image/LineChart.PNG «LineChart») ![ColumnChart](./image/ColumnChart.PNG «ColumnChart») ![BarChart](./image/BarChart.PNG «BarChart»)
Диаграмма областей Смешанная диаграмма областей Пузырьковая диаграмма областей
![AreaChart](./image/AreaChart.PNG «AreaChart») ![mixed](./image/mixed.PNG «mixed») ![bubble](./image/bubble.PNG «bubble»)
Круговая диаграмма областей Полярная диаграмма областей Точечная диаграмма областей
![pie](./image/pie.PNG «pie») ![polar](./image/polar.PNG «polar») ![scatter](./image/scatter.PNG «scatter»)
Прокручиваемая диаграмма обновления столбчатой диаграммы Прокручиваемая диаграмма обновления линейной диаграммы Прокручиваемая диаграмма обновления ступенчатой диаграммы областей
![scrollingUpdateColumnChart](./image/scrollingUpdateColumnChart.PNG «scrollingUpdateColumnChart») ![scrollingUpdateLineChart](./image/scrollingUpdateLineChart.PNG «scrollingUpdateLineChart») ![scrollingUpdateStepAreaChart](./image/scrollingUpdateStepAreaChart.PNG «scrollingUpdateStepAreaChart»)
Диаграмма сортировки данных столбчатой диаграммы Диаграмма сортировки данных линейной диаграммы Диаграмма сортировки точечной диаграммы
![DataSortingBarChart](./image/DataSortingBarChart.PNG «DataSortingBarChart») ![DataSortingColumnChart](./image/DataSortingColumnChart.PNG «DataSortingColumnChart») ![DataSortingScatterChart](./image/DataSortingScatterChart.PNG «DataSortingScatterChart»)

Инструкция по установке

  1. Скачайте демо AAChartCoreDemo.
  2. Скопируйте папку AAChartCoreLib и все файлы из папки resources/rawfile в свой проект.

Проект можно запустить в SDK6 и DevEco Studio 2.2 beta1. Если не запускается, удалите файлы .gradle, .idea, build, gradle, build.gradle и создайте новый проект на основе вашей версии. Затем скопируйте новые файлы проекта в корневую директорию.

Использование

Использовать библиотеку просто. Достаточно посмотреть примеры исходного кода.

Создание представления AAChartView

        <AAChartCore.AAChartConfiger.AAChartView
            ohos:id="$+id:AAChartView"
            ohos:height="match_parent"
            ohos:width="match_parent"
        />

Использование в Java

        AAChartView aaChartView = (AAChartView) findComponentById(ResourceTable.Id_AAChartView);

Настройка модели представления AAChartModel Можно настроить модель объекта AAChartModel с помощью цепочечного программирования.

AAChartModel aaChartModel = new AAChartModel()
.chartType(AAChartType.Area)
.title("THE HEAT OF PROGRAMMING LANGUAGE")
.subtitle("Virtual Data")
.backgroundColor("#4b2b7f")
.categories(new String[]{"Java","Swift","Python","Ruby", "PHP","Go","C","C#","C++"})
.dataLabelsEnabled(false)
.yAxisGridLineWidth(0f)
.series(new AASeriesElement[]{
    new AASeriesElement()
    .name("Tokyo")
    .data(new Object[]{7.0, 6.9, 9.5, 14.5, 18.2, 21.5, 25.2, 26.5, 23.3, 18.3, 13.9, 9.6}),
    new AASeriesElement()
    .name("NewYork")
    .data(new Object[]{0.2, 0.8, 5.7, 11.3, 17.0, 22.0, 24.8, 24.1, 20.1, 14.1, 8.6, 2.5}),
    new AASeriesElement()
    .name("London")
    .data(new Object[]{0.9, 0.6, 3.5, 8.4, 13.5, 17.0, 18.6, 17.9, 14.3, 9.0, 3.9, 1.0}),
    new AASeriesElement()
    .name("Berlin")
    .data(new Object[]{3.9, 4.2, 5.7, 8.5, 11.9, 15.2, 17.0, 16.6, 14.2, 10.3, 6.6, 4.8})
});

Рисование диаграммы (после создания экземпляра AAChartView)

        /*图表视图对象调用图表模型对象,绘制最终图形*/
        aaChartView.aa_drawChartWithChartModel(aaChartModel);

Обновление диаграммы Если необходимо обновить данные диаграммы, следует прочитать этот раздел и выбрать подходящий метод в зависимости от ваших потребностей. После первого рисования диаграммы рекомендуется использовать следующий метод для обновления только данных серии.

    /*仅仅更新了图表的series数组数据,不改动图表的其他内容*/
    aaChartView.aa_onlyRefreshTheChartDataWithChartModelSeries(chartModelSeriesArray)

Для обновления других свойств диаграммы, кроме данных серии, после первого рисования рекомендуется использовать следующий метод. ``` String EaseInCirc = "easeInCirc"; String EaseOutCirc = "easeOutCirc"; String EaseInOutCirc = "easeInOutCirc"; String EaseOutBounce = "easeOutBounce"; String EaseInBack = "easeInBack"; String EaseOutBack = "easeOutBack"; String EaseInOutBack = "easeInOutBack"; String Elastic = "elastic"; String SwingFromTo = "swingFromTo"; String SwingFrom = "swingFrom"; String SwingTo = "swingTo"; String Bounce = "bounce"; String BouncePast = "bouncePast"; String EaseFromTo = "easeFromTo"; String EseFrom = "easeFrom"; String EaseTo = "easeTo"; }


**ChartCore-Slim** 其中十种图表渲染动画类型
| Back      | Bounce    | Circ      | Cubic     | Elastic   |
|:---------:|:---------:|:---------:|:---------:|:---------:|
| ![][1]    | ![][2]    | ![][3]    | ![][4]    | ![][5]    |

| Expo      | Quad      | Quart     | Quint     | Sine      |
|:---------:|:---------:|:---------:|:---------:|:---------:|
| ![][6]    | ![][7]    | ![][8]    | ![][9]    | ![][10]   |


**`AAChartModel` 属性说明**

###### AAChartModel 主要属性说明

| **Свойство** | **Описание** | **Диапазон значений** |
| --- | --- | --- |
| title |  Главный заголовок графика | Любая допустимая строка |
| subtitle | Подзаголовок графика | Любая допустимая строка |
| chartType | Тип графика, может быть любым из `AAChartType` перечисления. Поддерживаются различные типы графиков, такие как столбчатые, линейные, гистограммы, круговые диаграммы и другие | .column, .bar, .area, .line, .pie и т. д. |
| stacking | Следует ли складывать значения каждого столбца данных графика вместе. По умолчанию используется значение `.none`, что отключает эффект наложения | .none, .normal, .percent |
| symbol | Стиль соединения точек кривой графика. Можно выбрать из следующих вариантов: круг, квадрат, ромб, обычный треугольник и перевёрнутый треугольник. По умолчанию — смешанный стиль | .circle, .square, .diamond, .triangle, .triangleDown |
| colorsTheme | Цветовая тема графика | Массив шестнадцатеричных строк цвета, например `#fe117c`, `#ffc069`, `#06caf4`, `#7dffc0` |
| series | Данные графика | Эффективный массив объектов AASeriesElement, каждый из которых имеет соответствующие данные, тип, цвет, прозрачность и т.д. |

###### AAChartModel список всех свойств
```java
public String  animationType;         //Тип анимации
public Integer animationDuration;     //Длительность анимации
public String  title;                 //Содержание заголовка
public String  subtitle;              //Содержание подзаголовка
public String  chartType;             //Тип графика
public String  stacking;              //Стиль наложения
public String  symbol;                //Тип соединения точек кривой: «круг», «квадрат», «ромб», «треугольник», «перевёрнутый треугольник». По умолчанию «круг»
public String  symbolStyle;
public String  zoomType;              //Тип масштабирования AAChartZoomTypeX означает возможность масштабирования по оси X с помощью жестов
public Boolean pointHollow;           //Пустотелые точки для кривых или линий
public Boolean inverted;              //Перевёрнутая ось X (вертикальная)
public Boolean xAxisReversed;         //Перевёрнутая ось X
public Boolean yAxisReversed;         //Перевёрнутая ось Y
public Boolean tooltipEnabled;        //Отображать ли всплывающую подсказку (по умолчанию отображается)
public String  tooltipValueSuffix;    //Суффикс единицы измерения во всплывающей подсказке
public Boolean tooltipCrosshairs;     //Отображать ли перекрестие (по умолчанию отображается)
public Boolean gradientColorEnable;   //Включить ли градиент цвета
public Boolean polar;                 //Преобразовать ли в полярную диаграмму (превращается в круговую диаграмму)
public Float   marginLeft;
public Float   marginRight;
public Boolean dataLabelEnabled;      //Отображать ли данные
public Boolean xAxisLabelsEnabled;    //Отображать ли метки оси X
public String[]categories;            //Категории оси X
public Integer xAxisGridLineWidth;    //Ширина линии сетки оси X
public Boolean xAxisVisible;          //Отображать ли ось X
public Boolean yAxisVisible;          //Отображать ли ось Y
public Boolean yAxisLabelsEnabled;    //Отображать ли метки оси Y
public String  yAxisTitle;            //Заголовок оси Y
public Float   yAxisLineWidth;        //Ширина линии оси Y

public Integer yAxisGridLineWidth;    //Ширина линии сетки оси Y
public Object[]colorsTheme;           //Массив цветов темы графика
public Boolean legendEnabled;         //Отображать ли легенду
public String  legendLayout;          //Макет данных легенды. Макет: горизонтальный или вертикальный. По умолчанию горизонтальный.
public String  legendAlign;           //Расположение легенды в области графика: слева, по центру или справа.
public String  legendVerticalAlign;   //Вертикальное выравнивание легенды: верх, середина или низ. Вертикальное положение можно дополнительно настроить с помощью опции y.
public String  backgroundColor;       //Цвет фона графика
public Boolean options3dEnable;       //Преобразовать ли график в трёхмерный (действует только для столбчатых и линейных графиков) ```
public Integer options3dAlphaInt;
public Integer options3dBetaInt;
public Integer options3dDepth;        // 3D 图形深度
public Integer borderRadius;          // 柱状图长条图头部圆角半径 (可用于设置头部的形状,仅对条形图,柱状图有效)
public Integer markerRadius;          // 折线连接点的半径长度
public AASeriesElement[] series;
public String  titleColor;            // 标题颜色
public String  subTitleColor;         // 副标题颜цвет
public String  axisColor;             // x 轴和 y 轴文字颜色

测试信息

CodeCheck 代码测试无异常. CloudTest 代码测试无异常. 病毒安全检测通过. 当前版本 demo 功能与原组件基本无差异.

Версия итерация

1.0.0 0.0.1-SNAPSHOT

Авторские права и лицензия

AAInfographics доступен под лицензией MIT. Дополнительную информацию смотрите в файле LICENSE.

Комментарии ( 0 )

Вы можете оставить комментарий после Вход в систему

Введение

**Графическая структура** *Здесь перевод может быть неполным или неточным, так как не хватает контекста.* Расширить Свернуть
Apache-2.0
Отмена

Обновления (2)

все

Участники

все

Недавние действия

Загрузить больше
Больше нет результатов для загрузки
1
https://gitlife.ru/oschina-mirror/chinasoft3_ohos-AAChartCore.git
git@gitlife.ru:oschina-mirror/chinasoft3_ohos-AAChartCore.git
oschina-mirror
chinasoft3_ohos-AAChartCore
chinasoft3_ohos-AAChartCore
master