怎么使用markdownplus画线图/How to use markdownplus to create a line chart

in utopian-io •  7 years ago  (edited)

Summary:
Markdown-plus is a markdown editor, but it also can help us to create charts . Today i will show you how to use markdownplus to create line chart.
Markdown-plus从名字看是markdown的升级版,不仅仅可以让我们用md语法写文章,同时支持让我们创建图表,今天我介绍如何使用markdown-plus 创建连线图。

因为markdown-plus扩展支持了chart.js,所以我们只需要执行简短的代码就可以绘制精美的统计图,而不需要去学习太多chart.js的知识。

What Will I Learn?/教程知识点

  • Markdown语法格式输入,以及如何支持扩展语言
  • 声明连线图
  • 设置X轴标签名称
  • 设置连线图外观
  • 录入数据

Requirements/要求

  • 简单英文基础
  • 简单markdown语法基础
  • 下载markdown-plus编辑器

Difficulty/难度

简单

Tutorial Contents/教程内容

下面先看一个简单例子:

1.gif

演示代码如下:

{
  "type": "line",
  "data": {
    "labels": [
      "January",
      "February",
      "March",
      "April",
      "May",
      "June",
      "July"
    ],
    "datasets": [
      {
        "label": "# of bugs",
        "fill": false,
        "lineTension": 0.1,
        "backgroundColor": "rgba(75,192,192,0.4)",
        "borderColor": "rgba(75,192,192,1)",
        "borderCapStyle": "butt",
        "borderDash": [],
        "borderDashOffset": 0,
        "borderJoinStyle": "miter",
        "pointBorderColor": "rgba(75,192,192,1)",
        "pointBackgroundColor": "#fff",
        "pointBorderWidth": 1,
        "pointHoverRadius": 5,
        "pointHoverBackgroundColor": "rgba(75,192,192,1)",
        "pointHoverBorderColor": "rgba(220,220,220,1)",
        "pointHoverBorderWidth": 2,
        "pointRadius": 1,
        "pointHitRadius": 10,
        "data": [
          65,55,
          59,55,
          80,3,
          81,3,
          56,4,
          55.5,
          40
        ],
        "spanGaps": false
              }
    ]
  },
  "options": {}
}
知识点1:Markdown语法格式输入,以及如何支持扩展语言

markdown 里面代码是使用 英文状态下的4个顿号括起来的,如下:

····
代码  //此时,这部分内容是不被执行的,在markdown会直接显示出来。
····

效果是代码高亮,区别于别的内容。

想要实现进度图,markdown语法是不支持的,而markdown-plus支持语法扩展,所以我们可以在markdown-plus输入别的语法来实现我们需要的功能。

····chart
代码区域
····

这里我们使用扩展语法 chart来制作进度图图,此时,代码区域的内容会被执行。

知识点2:声明连线图
"type": "line",

type为图表类型,line即为连线图。

知识点3:设置X轴标签名称
"data": {
    "labels": [
      "January",
      "February",
      "March",
      "April",
      "May",
      "June",
      "July"
    ],

labels即为标签,这里设置的是显示在X轴上面的各个标签名称。用双引号括起来,用逗号隔开。例子如下:

360截图20180116215700252.jpg

知识点4:设置连线图外观
"datasets": [
      {
        "label": "# of bugs",
        "fill": false,
        "lineTension": 0.1,
        "backgroundColor": "rgba(75,192,192,0.4)",
        "borderColor": "rgba(75,192,192,1)",
        "borderCapStyle": "butt",
        "borderDash": [],
        "borderDashOffset": 0,
        "borderJoinStyle": "miter",
        "pointBorderColor": "rgba(75,192,192,1)",
        "pointBackgroundColor": "#fff",
        "pointBorderWidth": 1,
        "pointHoverRadius": 5,
        "pointHoverBackgroundColor": "rgba(75,192,192,1)",
        "pointHoverBorderColor": "rgba(220,220,220,1)",
        "pointHoverBorderWidth": 2,
        "pointRadius": 1,
        "pointHitRadius": 10,
       }
    ]

label 图例,显示在表格上方,如下:
360截图20180116215905927.jpg

其余参数介绍:

Line Configuration 线性设置

NameTypeDefaultDescription
tensionNumber0.4默认贝塞尔曲线张力设置,设置为0时,没有曲线张力
backgroundColorColor'rgba(0,0,0,0.1)'默认填充颜色
borderWidthNumber3线的宽度
borderColorColor'rgba(0,0,0,0.1)'默认线的颜色
borderCapStyleString'butt'默认线的一端的样式
borderDashArray[]默认线条波折线样式
borderDashOffsetNumber0.0默认波折线间距
borderJoinStyleString'miter'默认线波折连接样式
capBezierPointsBooleantrue如果值为true则控制图表内部点,为false则不控制
fillBooleantrue如果是true则为线填充颜色
steppedBooleanfalse如果是true则线的样式是折线,张力会无效

Point Configuration点型设置

NameTypeDefaultDescription
radiusNumber3默认半径
pointStyleString'circle'默认样式
backgroundColorColor'rgba(0,0,0,0.1)'默认填充颜色
borderWidthNumber1默认边的宽度
borderColorColor'rgba(0,0,0,0.1)'默认边的颜色
hitRadiusNumber1鼠标悬浮时额外增加的半径
hoverRadiusNumber4鼠标放上去是的默认半径
hoverBorderWidthNumber1鼠标放上去时默认线宽

Rectangle Configuration矩形设置

NameTypeDefaultDescription
backgroundColorColor'rgba(0,0,0,0.1)'默认条颜色
borderWidthNumber0默认条的线宽
borderColorColor'rgba(0,0,0,0.1)'默认条的线的颜色
borderSkippedString'bottom'默认的跳跃边界
知识点5:录入数据
"data": [
          65,
          59,
          80,
          80,
          50,
          55,
          40
        ],

此部分代码还是要写在dataset里,data:数据。格式 "data":{data1,data2,data3……}

x轴标签有多少个就录入多少个数据。

下面是个简单实例:

1.gif

代码如下:

{
  "type": "line",
  "data": {
    "labels": [
      "A",
      "B",
      "C",
      "D",
      "E",
      "F",
      "G",
      "H",
      "I",
      "J",
      "K",
      "L",
      "M",
      "N"
    ],
    "datasets": [
      {
        "label": "# of bugs ",
        "fill": true,
        "lineTension": 0.6,
        "backgroundColor": "rgba(25,102,192,0.1)",
        "borderColor": "rgba(75,92,192,1)",
        "borderCapStyle": "butt",
        "borderDash": [],
        "borderDashOffset": 1,
        "borderJoinStyle": "miter",
        "pointBorderColor": "rgba(175,192,192,1)",
        "pointBackgroundColor": "#fff",
        "pointBorderWidth": 1,
        "pointHoverRadius": 5,
        "pointHoverBackgroundColor": "rgba(175,192,192,1)",
        "pointHoverBorderColor": "rgba(225,225,220,1)",
        "pointHoverBorderWidth": 2,
        "pointRadius": 1,
        "pointHitRadius": 11,
        "data": [
          65,
          59,
          80,
          81,
          56,
          55,
          40,
          15,
          5,
          11.3,
          21,
          6,
          5,
          10
        ],
        "spanGaps": false
      }
    ]
  },
  "options": {}
}

Curriculum/系列课程



Posted on Utopian.io - Rewarding Open Source Contributors

Authors get paid when people like you upvote their post.
If you enjoyed what you read here, create your account today and start earning FREE STEEM!
Sort Order:  

Your contribution cannot be approved because it does not refer to or relate to an open-source repository. See here for a definition of "open-source."

Explanation:

  • Markdown Plus, as a product application, is NOT free to use, and can be bought here ($14.99 on Mac Appstore);
  • the GitHub repo does however mention an MIT license, but also a copyright notice.
  • regarding the MIT license: "The MIT license permits reuse within proprietary software provided that all copies of the licensed software include a copy of the MIT License terms and the copyright notice." => this means that it is possible to fork the GitHub repo, and embed (parts of) the Markdown Plus code inside other code, and release that as a free open source product, but Markdown Plus as a "bundled product" definitely is not free to use;
  • I'm not quite sure, but I'm suspecting that the repo owner doesn't quite understand the true legal nature of an MIT license;
  • your tutorial wouldn't qualify to my Utopian standards / rule interpretation, for your tutorial only describes adding a JSON config file, which only regards charts.js, and you don't explain all its components in a step-by-step fashion.
  • your other Markdown Plus tutorials shouldn't have been accepted either: I will notify the other Utopian mods about it.
    @scipio

You can contact us on Discord.
[utopian-moderator]

Congratulations @dalao! You have received a personal award!

1 Year on Steemit
Click on the badge to view your Board of Honor.

Do not miss the last post from @steemitboard!


Participate in the SteemitBoard World Cup Contest!
Collect World Cup badges and win free SBD
Support the Gold Sponsors of the contest: @good-karma and @lukestokes


Do you like SteemitBoard's project? Then Vote for its witness and get one more award!

Congratulations @dalao! You received a personal award!

Happy Birthday! - You are on the Steem blockchain for 2 years!

You can view your badges on your Steem Board and compare to others on the Steem Ranking

Vote for @Steemitboard as a witness to get one more award and increased upvotes!