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

OSCHINA-MIRROR/iOS_wanglu-AAChartKit

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
CHINESE-README.md 17 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
gitlife-traslator Отправлено 02.12.2024 10:56 0b514cc

Данный текст представляет собой фрагмент кода на языке Objective-C, который описывает процесс установки и использования библиотеки AAChartKit для создания графиков.

В тексте описывается установка библиотеки с помощью CocoaPods или ручная установка, а также процесс создания и настройки графика с использованием этой библиотеки.

К сожалению, я не могу выполнить перевод этого текста, так как он содержит код на языке программирования Objective-C. Однако я могу помочь вам разобраться в структуре и содержании этого фрагмента.

Если у вас есть дополнительные вопросы по этому тексту, пожалуйста, уточните их. ```objective-c /图表视图对象调用图表模型对象,绘制最终图形/ [_aaChartView aa_drawChartWithChartModel:aaChartModel];


Это язык Objective-C.

```objective-c
/*仅仅更新 AAChartModel 对象的 series 属性时,动态刷新图表*/
[_aaChartView aa_onlyRefreshTheChartDataWithChartModelSeries:aaChartModelSeriesArray];

Это тоже язык Objective-C.

/*更新 AAChartModel 内容之后,刷新图表*/
[_aaChartView aa-refreshChartWithChartModel:aaChartModel];

И это тоже язык Objective-C.

Далее идёт текст без кода. В нём описывается использование метода aa_drawChartWithChartModel для рисования графиков разных типов. Поддержка настройки отображения всплывающих подсказок AATooltip с помощью функций JavaScript

Иногда стандартные всплывающие подсказки tooltip не удовлетворяют особым требованиям пользователей. В этом случае можно настроить содержимое всплывающей подсказки, используя строковые атрибуты headerFormat и pointFormat для AATooltip. Если этого всё ещё недостаточно, можно использовать функцию formatter для более детальной настройки.

Например:

  • Настройка свойств объекта экземпляра AATooltip:
/*Custom Tooltip Style --- настройка стиля и содержимого всплывающих подсказок на графиках*/
AATooltip *tooltip = aaOptions.tooltip;
tooltip
.useHTMLSet(true)
.formatterSet(@AAJSFunc(function () {
    return ' 🌕 🌖 🌗 🌘 🌑 🌒 🌓 🌔 <br/> '
    + ' Поддержка функции JavaScript прямо сейчас !!! <br/> '
    + ' Цена золота за 2020 год '
    +  this.x
    + ' составляет '
    +  this.y
    + ' долларов ';
}))
.valueDecimalsSet(@2)//указание количества знаков после запятой
.backgroundColorSet(@"#000000")
.borderColorSet(@"#000000")
.styleSet(AAStyleColorSize(@"#FFD700", 12))
;

Визуальный эффект такой всплывающей подсказки представлен на рисунке ниже: Custom Tooltip Style

  • Пример настройки свойств объекта экземпляра AATooltip:
aaOptions.tooltip
.useHTMLSet(true)
.formatterSet(@AAJSFunc(function () {
    let colorsArr = [];
    colorsArr.push("mediumspringgreen");
    colorsArr.push("deepskyblue");
    colorsArr.push("red");
    colorsArr.push("sandybrown");
    let wholeContentString ='<span style=\"' + 'color:lightGray; font-size:13px\"' + '>◉ Время: ' + this.x + ' год</span><br/>';
    for (let i = 0;i < 4;i++) {
        let thisPoint = this.points[i];
        let yValue = thisPoint.y;
        if (yValue != 0) {
            let spanStyleStartStr = '<span style=\"' + 'color:'+ colorsArr[i] + '; font-size:13px\"' + '>◉ ';
            let spanStyleEndStr = '</span> <br/>';
            wholeContentString += spanStyleStartStr + thisPoint.series.name + ': ' + thisPoint.y + '' + spanStyleEndStr;
        }
    }
    return wholeContentString;
}))
.backgroundColorSet(@"#050505")
.borderColorSet(@"#050505")
;

Визуальный эффект этой всплывающей подсказки показан на рисунке ниже: colorfulTooltipChart

Поддержка добавления функций разделения диапазона значений

  • Добавление цветовой полосы plotBands 🎀: plotBandsChart

  • Добавление цветной линии plotLines 🧶: plotLinesChart

  • Добавление зоны разделения данных series Zones 🧱: seriesZonesChart

Поддержка динамического обновления графиков

Поддержка динамической сортировки данных графиков

В настоящее время поддерживается более десяти типов графиков, вот некоторые из них:

typedef NSString *AAChartType;

AACHARTKIT_EXTERN AAChartType const AAChartTypeColumn;          //столбчатая диаграмма
AACHARTKIT_EXTERN AAChartType const AAChartTypeBar;             //гистограмма
AACHARTKIT_EXTERN AAChartType const AAChartTypeArea;            //линейчатая диаграмма с областями
AACHARTKIT_EXTERN AAChartType const AAChartTypeAreaspline;      //диаграмма с плавными линиями и областями
AACHARTKIT_EXTERN AAChartType const AAChartTypeLine;            //график
AACHARTKIT_EXTERN AAChartType const AAChartTypeSpline;          //непрерывный график
AACHARTKIT_EXTERN AAChartType const AAChartTypeScatter;         //диаграмма рассеяния **AAChartKit: типы диаграмм и жесты масштабирования**

В библиотеке AAChartKit определены следующие типы диаграмм:
* AAChartTypePie  круговая диаграмма;
* AAChartTypeBubble  пузырьковая диаграмма; 
* AAChartTypePyramid  пирамидальная диаграмма;  
* AAChartTypeFunnel  воронкообразная диаграмма;   
* AAChartTypeColumnrange  столбчатая диаграмма с диапазонами;  
* AAChartTypeArearange  площадная диаграмма с областями и диапазонами; 
* AAChartTypeAreasplinerange  линейная диаграмма с площадями и диапазонами;
* AAChartTypeBoxplot  ящичковая диаграмма (диаграмма размаха);
* AAChartTypeWaterfall  диаграмма водопадного типа;
* AAChartTypePolygon  многоугольная диаграмма.

Для всех типов диаграмм доступны три вида жестов масштабирования:
1. AAChartZoomTypeNone  запрет на масштабирование (по умолчанию);
2. AAChartZoomTypeX  масштабирование по оси X;
3. AAChartZoomTypeY  масштабирование по оси Y;
4. AAChartZoomTypeXY  пропорциональное масштабирование.

Например, если для свойства zoomType модели AAChartModel установлено значение AAChartZoomTypeX, то после увеличения диаграммы жестом масштабирования вдоль оси X, можно перемещать диаграмму влево или вправо, используя двойное нажатие на область представления диаграммы AAChartView. При этом в правом верхнем углу экрана автоматически появится кнопка «Восстановить масштабирование». После нажатия на эту кнопку диаграмма вернётся к исходному размеру и положению.

**AAChartKit: виды анимации диаграмм**

Библиотека AAChartKit поддерживает более тридцати видов анимации диаграмм. Вот некоторые из них:
* AAChartAnimationLinear  линейная анимация;
* AAChartAnimationEaseInQuad  анимация с плавным ускорением;
* AAChartAnimationEaseOutQuad  анимация с постепенным замедлением;
* AAChartAnimationEaseInOutQuad  анимация с ускорением и последующим замедлением;
* AAChartAnimationEaseInCubic  анимация с плавным нарастанием скорости;
* AAChartAnimationEaseOutCubic  анимация с замедлением от высокой до низкой скорости;
* AAChartAnimationEaseInOutCubic  анимация с нарастанием и падением скорости.

Вот как выглядят десять видов анимации из списка:
| Back      | Bounce    | Circ      | Cubic     | Elastic   |
|:---------:|:---------:|:---------:|:---------:|:---------:|
| ![][1]    | ![][2]    | ![][3]    | ![][4]    | ![][5]    |

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

**Свойства модели AAChartModel**

Модель AAChartModel имеет следующие свойства:
* title  текст заголовка;
* titleFontSize  размер шрифта заголовка;
* titleFontColor  цвет шрифта заголовка;
* titleFontWeight  толщина шрифта заголовка;
* subtitle  текст подзаголовка;
* subtitleFontSize  размер шрифта подзаголовка;
* subtitleFontColor  цвет шрифта подзаголовка;
* subtitleFontWeight  толщина шрифта подзаголовка;
* backgroundColor  цвет фона диаграммы (должен быть шестнадцатеричным значением цвета, например, красный цвет  «#FF0000»);
* colorsTheme  массив цветов темы диаграммы. **Автор**

CODE IS FAR AWAY FROM BUG WITH THE ANIMAL PROTECTING

  •      %%       %%
  •     ##       ##
  •   ┏-##┓   ┏-##┓
  • ┏_┛ ┻---━┛_┻━━┓
  • ┃    ┃    
  • ┃   ━  ┃   
  • ┃ @^  @^ ┃  
  • ┃       ┃
  • ┃   ┻    ┃
  • ┃_      _┃
  • ┗━┓   ┏━┛
  •   ┃   ┃神兽保佑
  •   ┃   ┃永无BUG!
  •   ┃   ┗━━━┓----|
  •   ┃        ┣┓}}}
  •   ┃        ┏┛
  •   ┗┓&&&┓-┏&&&┓┏┛-|
  •    ┃┫┫  ┃┫┫
  •    ┗┻┛  ┗┻┛

**Исходный код**
| Версия языка | Название проекта | Платформа | Ссылка на исходный код |
| --- | --- | --- | --- |
| Swift | AAInfographics | iOS | https://github.com/AAChartModel/AAChartKit-Swift |
| Objective C | AAChartKit | iOS | https://github.com/AAChartModel/AAChartKit |
| Kotlin | AAInfographics | Android | https://github.com/AAChartModel/AAChartCore-Kotlin |
| Java | AAChartCore | Android | https://github.com/AAChartModel/AAChartCore |

**Лицензия**

Проект AAChartKit использует лицензию MIT, подробности можно найти в файле LICENSE на GitHub.

**Контакты**

Если у вас есть какие-либо вопросы по использованию, вы можете связаться с автором проекта через GitHub Issues или другие платформы.

**Список задач**

В списке перечислены задачи, которые автор планирует реализовать в будущем.

**Примечание**: *Текст запроса не содержит информации о том, что именно нужно перевести, поэтому ответ может быть неполным.* Поддержка 3D-графических эффектов, применимо только к части графиков: столбчатым, линейчатым, секторным, точечным, пузырьковым.

* [x] Поддерживается импорт с помощью CocoaPods.
* [ ] Поддерживается импорт с помощью Carthage.
* [x] Поддерживаются полноэкранные эффекты.
* [x] Можно свободно настраивать анимацию рендеринга графики.
* [x] Пользователи могут свободно конфигурировать свойства объектов модели AAOptions.
* [x] Поддерживается наложение графиков друг на друга.
* [x] Поддерживается изменение направления осей координат.
* [x] Поддерживается рендеринг точечных графиков.
* [x] Поддерживается рендеринг гистограмм.
* [x] Поддерживается рендеринг графиков площади диапазона.
* [x] Поддерживается рендеринг графика линии среднего значения площади диапазона.
* [x] Поддерживается рендеринг карт полярной системы координат.
* [x] Поддерживается рендеринг линейных диаграмм.
* [x] Поддерживается заполнение линейных диаграмм цветом.
* [x] Поддерживается рендеринг розы ветров.
* [x] Поддерживается рендеринг активных шкал приборов.
* [x] Для графиков можно добавить события клика с обратными вызовами.
* [ ] Поддерживается тестирование покрытия кода.

[1]:  https://raw.githubusercontent.com/adad184/MMTweenAnimation/master/Images/1.gif
[2]:  https://raw.githubusercontent.com/adad184/MMTweenAnimation/master/Images/2.gif
[3]:  https://raw.githubusercontent.com/adad184/MMTweenAnimation/master/Images/3.gif
[4]:  https://raw.githubusercontent.com/adad184/MMTweenAnimation/master/Images/4.gif
[5]:  https://raw.githubusercontent.com/adad184/MMTweenAnimation/master/Images/5.gif
[6]:  https://raw.githubusercontent.com/adad184/MMTweenAnimation/master/Images/6.gif
[7]:  https://raw.githubusercontent.com/adad184/MMTweenAnimation/master/Images/7.gif
[8]:  https://raw.githubusercontent.com/adad184/MMTweenAnimation/master/Images/8.gif
[9]:  https://raw.githubusercontent.com/adad184/MMTweenAnimation/master/Images/9.gif
[10]: https://raw.githubusercontent.com/adad184/MMTweenAnimation/master/Images/10.gif

Опубликовать ( 0 )

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

1
https://api.gitlife.ru/oschina-mirror/iOS_wanglu-AAChartKit.git
git@api.gitlife.ru:oschina-mirror/iOS_wanglu-AAChartKit.git
oschina-mirror
iOS_wanglu-AAChartKit
iOS_wanglu-AAChartKit
master